[Dasar Python]: Memanggil File Berbasis Teks di Python

Halo PythonMania, apa kabar hari ini?
Masih semangat belajar Python kan? Hari ini akan kami sajikan MENU SPESIAL buat Anda, para pecinta Python – PythonMania, yaitu “Bagaimana Memanggil & Membaca Isi File di Python?”. So…Langsung aja ke TeKaPe!

Open Your Mind with Open File.

Open Your Mind with Open File.

Setiap waktu bisa dikatakan, kita sudah sangat familiar dengan file. File ini berfungsi menyimpan data-data kita yang mana kita bisa menggunakannya atau mengubah isinya di lain waktu. Python memberikan kemudahan yang amat sangat pada kita dalam bekerja dengan menggunakan file. Berikut ringkasan singkat bekerja dengan File di Python:

Membuka File
Python menyediakan fungsi Open() yang berfungsi untuk membuka file, plus pilihan mode yang kita inginkan dalam mengutak-atik file tersebut. Berikut syntax fungsi Open(),

open(namafile[, mode[, buffering]])

Mode File
Python memberikan pilihan kondisi sesuai keinginan kita terhadap file tersebut. Berikut mode file yang disediakan oleh Python,
'r' --> mode baca
'w' --> mode tulis
'a' --> mode tambah
'b' --> mode biner
'+' --> mode baca/tulis

Berbagai Fungsi Pada File
Fungsi-fungsi untuk membaca file:

read(), readline(), readlines()

Fungsi-fungsi untuk menulis file:

write(), writelines()

Fungsi menutup file:

close()

Berikut ini kami tampilkan listing sebuah aplikasi berbasis GUI yang berguna untuk membuka dan melihat isi file. Mode file yang digunakan adalah mode baca (‘r’).

Komponen Tkinter: Frame, Label, Entry, Button, dan Text.
Kode Program:

# file: OpenFile.py
# Deskripsi: program aplikasi untuk menampilkan
# 		isi dari sebuah file.
#
# Python ver. 2.6
# Sistem Operasi: Debian 6 (squeeze)
# Tgl pembuatan: 9 Januari 2013 @ 10.05 WIB
# Penulis: KlinikPython.wordpress.com
#

from Tkinter import *
from tkFileDialog import * 		# memanggil dialog OpenFile


class DemoOpenFile:
	def __init__(self, induk, judul):
		self.induk = induk
		
		self.induk.title(judul)
		self.induk.protocol("WM_DELETE_WINDOW", self.tutup)
		self.induk.resizable(False, False)
		
		self.aturKomponen()
		
	def aturKomponen(self):
		# atur frame utama
		mainFrame = Frame(self.induk)
		mainFrame.pack(fill=BOTH, expand=YES)
		
		## frame_teks
		fr_file = Frame(mainFrame, bd=5)
		fr_file.pack(fill=BOTH, expand=YES)
		
		# atur komponen Label, Entri, Button 
		# input file.
		Label(fr_file, text="Nama File: ", anchor=W).pack(side=LEFT)
		
		self.entFile = Entry(fr_file)
		self.entFile.pack(side=LEFT, fill=X, expand=1, padx=5)
		
		self.btnCari = Button(fr_file, text='Cari', command=self.onCari)
		self.btnCari.pack(side=LEFT)
		
		# atur komponen Text
		# tampilkan file
		fr_teks = Frame(mainFrame, bd=5)
		fr_teks.pack(fill=BOTH, expand=YES)
		
		self.txtFile = Text(fr_teks, wrap=NONE)
		
		sbVer = Scrollbar(fr_teks, orient=VERTICAL, 
				command=self.txtFile.yview)
		sbHor = Scrollbar(fr_teks, orient=HORIZONTAL,
				command=self.txtFile.xview)
		
		sbVer.pack(side=RIGHT, fill=Y)
		sbHor.pack(side=BOTTOM, fill=X)
		
		self.txtFile.config(yscrollcommand=sbVer.set, 
				xscrollcommand=sbHor.set)		
		self.txtFile.pack()
		
		# atur Button keluar
		Button(mainFrame, text='Keluar', command=self.tutup).pack(pady=5)
		
		# atur statusbar
		Label(mainFrame, text='www.KlinikPython.wordpress.com',
				bd=1, relief=RIDGE, foreground='blue').pack(
				side=BOTTOM, fill=X)
				
	def onCari(self, event=None):
		# membuka file dialog
		namafile = askopenfilename(filetypes=[('File Python', '*.py')])
		
		# jika file terbuka, maka judul file
		# ditampilkan pada komponen Entry.
		if namafile:
			self.entFile.delete(0, END)
			self.entFile.insert(END, namafile)
			
			# panggil fungsi isidata
			self.isiDataFile(namafile)
	
	def isiDataFile(self, nmfile):
		# buka file dengan fungsi Open ---> mode Baca('r')
		teksFile = open(nmfile, 'r').read()
		
		# isikan data file pada komponen Text.		
		self.txtFile.delete('1.0', END)
		self.txtFile.insert('1.0', teksFile)
		
		# menutup file
		teksFile.close()
			
	def tutup(self, event=None):
		self.induk.destroy()
		
if __name__ == '__main__':
	root = Tk()
	
	app = DemoOpenFile(root, ":: Demo Open File ::")
	
	root.mainloop()

Tampilan Program:

Tampilan program ketika kita memilih file .py.

Tampilan program ketika kita memilih file .py.

Woke…Semoga Bermanfaat dan Salam PythonMania!

About these ads

4 comments

  1. hi admin, sy mau tanya dong. kalo mau mencari kata dari suatu folder yang terdiri dari beberapa dokumen bagaimana ya?

    mohon pencerahan, makasi,

    -mPep

  2. mz gmna caranya menampilkan datang yang dipilih pada ceklistbox agar bisa tampil pada listctrl?? tolong jawabanya..

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s