Modul Pemogr. Python [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

MODUL PRAKTIKUM PEMOGRAMAN OPEN SOURCE (PYTHON)



DOSEN PENGASUH : MUNAR, ST, M.KOM



FAKULTAS ILMU KOMPUTER UNIVERSITAS ALMUSLIM KABUPATEN BIREUEN



Pengantar Python adalah bahasa pemrograman interpretatif multiguna dengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode.Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas, dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif. Python mendukung multi paradigma pemrograman, utamanya; namun tidak dibatasi;padapemrograman berorientasi objek, pemrograman imperatif, dan pemrograman fungsional.Salah satufitur yang tersedia pada python adalah sebagai bahasa pemrograman dinamis yang dilengkapi denganmanajemen memori otomatis.Seperti halnya pada bahasa pemrograman dinamis lainnya, pythonumumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luasmencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan bahasa skrip.Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalandi berbagai platform sistem operasi. Modul ini merupakan panduan bagi mahasiswa yang mempelajari Program Python dengan langkah – langkah yang lebih rinci dan tercantum contoh latihan dibuat sambung menyambung sehingga mudah difahami disertai ilustrasi yang menarik sehingga mahasiswa dapatn menyelesaikan setiap langkah yang ada dalam modul ini.



MODUL I 1. Sejarah Python Python dikembangkan oleh Guido van Rossum pada tahun 1990 di CWI, Amsterdam sebagaikelanjutan dari bahasa pemrograman ABC.Versi terakhir yang dikeluarkan CWI adalah 1.2Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan pengembangan Python.Versiterakhir yang dikeluarkan adalah 1.6 Tahun 2000, Guido dan para pengembang inti Pythonpindah ke BeOpen.com yang merupakan sebuah perusahaan komersial dan membentuk BeOpenPythonLabs.Python 2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido danbeberapa anggota tim PythonLabs pindah ke DigitalCreations. Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinir Guido dan Python Software Foundation.Python Software Foundation adalah sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh perusahaan komersial. Saat ini distribusi Python sudah mencapai versi 2.6.1 sampai versi 3.4.3 Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan Guido pada acara televisi Monty Python's Flying Circus. Oleh karena itu seringkali ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam korespondensi antar pengguna Python.Saat ini kode python dapat dijalankan di berbagai platform sistem operasi, beberapa diantaranya adalah Linux, Windows, Mac OS X, Java Virtual Machin OS/2 dan Lain Lain.



2. Install Python di Windows



http://kernelnotfound.wordpress.com/2012/02/22/install-python-di-windows/



Siapkan Sistem/Program Python Versi 3.2….atau Versi 3.4…. dengan mencari atau men download di Internet,kemudian lakukan langkah-langkah sebagai berikut untuk diinstall di Windows .Pastikan hasil download dua buah file diatas tidak corrupt , soalnya kalau corrupt bisa terjadi kegagalandalam instalasi. Double klik instaler python-3.2.msi



Setelah anda double klik maka akan muncul jendela instalasi seperti di bawah ini , pilih install for allusers agar bisa digunakan oleh semua user.



Pada bagian ini kita dapat menentukan di mana letak file hasil instaler nantinya , opsi saya biarkandefault. pilih next.



pada kotak instaler dibawah ini kita pilih semua agar semua fitur dari pemograman python akan tersedia nantinya. pilih next jika selesai.



Proses instalasi sedang berlangsung tunggu sampai selesai.



Klik Finish.



3. Install ActivePython di Windows Siapkan Sistem/Program ActivePython 2.7.… dengan mencari atau men download di Internet, kemudian lakukan langkah-langkah sebagai berikut untuk diinstall di Windows. Pastikan hasil download dua buah file diatas tidak corrupt , soalnya kalau corrupt bisa terjadi kegagalandalam instalasi. Double klik pada File Activepython-2.7.13.2713-win…maka akan muncul jendela instalasi seperti dibawah ini.



Pada bagian ini kita biarkan default , lalu pilih next.



Pada kotak dialog dibawah ini pilih instal untuk melakukan instalasi.



Proses instalasi berjalan , tunggu sampai selesai.



Klik finish , maka phyton anda telah siap untuk digunakan , selamat berkreasi dengan pemogramanPython.



Hasil program Python yang sudah terinstal pada system.



4. Menbuat Program dengan Python Program Python dapat dijalankan dengan beberapa mode. Jika kita mengeksekusi Python interpreter tanpa argument script Python yang telah kita buat, Python interpreter akan masuk ke mode interaktif (REPL, read-eval-print loop). Jalankan Python sehingga Muncul Layar sepereti di bawah ini :



Tempat Pengetikan Program Tempat Pengetikan Program



Ketik Perintah Berikut : >>> 2 >>> 80 >>> 8 >>>



1 + 1 40 * 2 40 / 5 9 – 10



-1 >>> 2 + 3 + 4 + 5 14 >>> 2 ** 32 4294967296



Ketik Kodingnya : pj=1+1 print (pj) pk=40*2 print (pk) pb=40/5 print (pb) pg=9-10 print (pg) pjj=2+3+4+5 print (pjj) pm=2**32 print (pm)



MODUL II 1. Operasi Aritmatika Berikut table operasi aritmatika yang ada di Python: Operasi + * ** / // %



Keterangan Menambahkan dua obyek Mengurangi obyek dengan obyekyang lain Perkalian Pangkat Pembagian Pembagian bulat ke bawah Sisa hasil bagi (modulus)



Contoh: Pembagian, perhatikan perbedaan antara bilangan bulat dan pecahan / desimal. >>> 10 / 3 3 >>> 10.0 / 3 3.3333333333333335 >>> 10 / 3.0 3.3333333333333335 >>> 10.0 / 3.0 3.3333333333333335 >>> 10.0 // 3.0 3.0 >>> 10.0 // 3 3.0 Sisa hasil bagi. >>>10 % 3 1 >>>2 % 3 2 >>> -5 % 4 3 2. Type Data Python adalah salah satu bahasa pemrograman yang bertipe Loosely Typed Language, Artinya tidak membutuhkan atau menyertakan tipe data sewaktu Anda membuat sebuah variable. Tipe data pada bahasa pemrograman Python mirip dengan tipe data pada bahasa pemrograman Perl.



Variabel dapat menyimpan nilai dengan berbagi tipe disebut dengan tipe data.Bilangan dan string adalah tipe dasar, yang sudah dibahas sebelumnya. Pada latihan berikutnya akan dibahas tipe data yanglain. Perlunya Anda menggunakan type untuk menentukan tipe data variabel / obyek yang anda ingin ketahui: >>>type(1)



>>>type(3.2)



>>> type(2 ** 1000)



>>> type('abc')



>>> type('a')



Tetapi secara dasar, Python memiliki beberapa tipe data, yaitu:      



Tipe Data String Tipe Data Number Tipe Data Boolean Tipe Data Tuples Tipe Data List dan Tipe Data Dictionary



Tipe Data String Tipe data string adalah tipe data yang digunakan untuk menyimpan nilai atau value yang berupa string atau karakter atau huruf. Pada bahasa pemrograman Python, tipe data string dapat dibentuk dengan menggunakan petik tunggal (single quote), petik ganda (double quote), dan petik tiga (tipple quote). Khusus untuk triple quote, Anda dapat menggunakan beberapa baris string tanpa menggunakan escape character '\n' (new line). Contoh ProgramDi bawah ini adalah contoh implementasi tipe data string pada program. # string_datatype.py x =( "Selamat Datang") y = ('Selamat Belajar Python') z = (""" belajar bahasa python sangat menyenangkan """) print (x) print (y) print (z) Apabila Anda jalankan program diatas, maka akan menghasilkan output seperti berikut:



Selamat Datang Selamat Belajar Python belajar bahasa python sangat menyenangkan Tipe Data Number Tipe Data Number digunakan untuk menyimpan data dalam bentuk numerik seperti int (integer), long, float, dan bilangan kompleks (complex number). Contoh Program Di bawah ini adalah contoh program penggunaan tipe data number: # Nama File: number_datatype.py #integer number _int1 = 100 _int2 = -600 _int3 = 0x69 print ("==== Integer Number ====") print (_int1) print (_int2) print (_int3) #Float number print ("\n==== Float Number ====") _float1 = 0.0 _float2 = -21.9 _float3 = 70.2E-29 print (_float1) print (_float2) print (_float3) #complex number _complex1 = 3.14j _complex2 = .876j _complex3 = 4.53e-7j print ("\n==== Complex Number ====") print (_complex1) print (_complex2) print (_complex2) Jika Anda jalankan program diatas, maka akan menghasilkan output sebagai berikut: ==== Integer Number ==== 100



-600 105 ==== Float Number ==== 0.0 -21.9 7.02e-28 ==== Complex Number ==== 3.14j 0.876j 0.876j Tipe Data Boolean Tipe data Boolean digunakan menyimpan data yang mempunyai nilai true atau false. Tipe Data Tuples Tipe data Tuples adalah tipe data yang digunakan untuk menyimpan data koleksi (kumpulan dari beberapa tipe data). Ciri dari tipe data tuples adalah memiliki tanda kurung buka dan kurung tutup "( )". Contoh Program Di bawah ini adalah contoh implementasi tipe data tuples pada program Python: # Nama File: tuples_datatype.py tuple1 = ( 'vwxyz', 123 , 1.15, 'Nursalim', 70.2 ) tuple2 = (123, 'Al Farizi') print ( tuple1 ) # Menampilkan semua data pada tuple print ( tuple1[0] ) # Menampilkan elemen pertama pada tuple print ( tuple1[1:3] ) # Menampilkan data dari elemen kedua sampai ketiga print ( tuple1[2:] ) # Menampilkan data dimulai dari elemen ketiga print ( tuple2 * 2 ) # Menampilkan data tupe dua kali print ( tuple1 + tuple2 ) # Menggabungkan tuple1 sama dengan tuple2 Jika Anda jalankan program diatas, maka akan menampilkan output seperti berikut: ('vwxyz', 123, 1.15, 'Nursalim', 70.2) vwxyz (123, 1.15) (1.15, 'Nursalim', 70.2) (123, 'Al Farizi', 123, 'Al Farizi') ('vwxyz', 123, 1.15, 'Nursalim', 70.2, 123, 'Al Farizi')



Tipe Data List Tipe Data List adalah tipe data yang mirip dengan tipe data tuples, yaitu untuk menyimpan data koleksi (kumpulan data beberapa tipe data). Ciri dari tipe data tuples adalah memiliki tanda kurung siku "[ ]". Contoh Program Di bawah ini adalah contoh implementasi tipe data list pada program Python: # Nama File: list_datatype.py list1 = ( 'vwxyz', 123 , 1.15, 'Nursalim', 70.2 ) list2 = (123, 'Al Farizi') print ( list1 ) # Menampilkan semua data pada list print ( list1[0] ) # Menampilkan elemen pertama pada list print ( list1[1:3] ) # Menampilkan data dari elemen kedua sampai ketiga print ( list1[2:] ) # Menampilkan data dimulai dari elemen ketiga print ( list2 * 2 ) # Menampilkan data list dua kali print ( list1 + list2 ) # Menggabungkan list1 sama dengan list2 Jika Anda jalankan program diatas, maka akan menghasilkan output sebagai berikut: ('vwxyz', 123, 1.15, 'Nursalim', 70.2) vwxyz (123, 1.15) (1.15, 'Nursalim', 70.2) (123, 'Al Farizi', 123, 'Al Farizi') ('vwxyz', 123, 1.15, 'Nursalim', 70.2, 123, 'Al Farizi') Tipe Data Dictionary Tipe data Dictionary adalah tipe data yang digunakan untuk menyimpan data dalam bentuk pasangan key dan value. Tipe data ini mirip dengan Map pada bahasa pemrograman Java. Contoh Program Dibawah ini adalah contoh implementasi tipe data dictionary pada program Python: # Nama File: dictionary_datatype.py dict = {} dict['one'] = "Ini elemen pertama" dict[2] = "Ini elemen kedua" tinydict = {'nama': 'Nursalim','employeeid':6734, 'departemen': 'IT'} print ( dict['one'] ) # Prints value for 'one' key print ( dict[2] ) # Prints value for 2 key print ( tinydict ) # Menampilkan semua data pada dictionary print ( tinydict['nama'] ) # Menampilkan nilai dari key nama



print ( tinydict.keys() ) # Menampikan semua key print ( tinydict.values() ) # Menampilkan semua value Jika Anda jalankan program diatas, maka akan menghasilkan output sebagai berikut: Ini elemen pertama Ini elemen kedua {'departemen': 'IT', 'employeeid': 6734, 'nama': 'Nursalim'} Nursalim dict_keys(['departemen', 'employeeid', 'nama']) dict_values(['IT', 6734, 'Nursalim']) 3. Variabel Hanya menggunakan konstanta literal saja cukup membosankan, kita membutuhkan cara untukmenyimpan dan memanipulasi informasi. Untuk hal ini kita bisa menggunakan variabel. Sepertinamanya, variabel dapat diisi dengan bermacam-macam nilai, anda dapat menyimpan apapunmenggunakan variabel. Variabel adalah sebagian dari memori komputer yang digunakan untukmenyimpan informasi. Berbeda dengan konstanta literal, anda membutuhkan cara untuk mengaksesvariabel ini, oleh karena itu kita memberi nama kepada variabel. Berikut aturan penamaan variabel dalam python. • Karakter pertama harus berupa karakter alfabet (huruf besar atau huruf kecil ASCII, atauunicode) atau underscore _. • Karakter selanjutnya dapat berupa alfabet (huruf besar atau huruf kecil ASCII, atau unicode),underscore _ atau digit (0-9). • Nama variabel bersifat case-sensitif. Sebagai contoh, namaMhs dan namamhs adalah variable yang berbeda. Nama sangatlah penting artinya dalam dunia pemrograman, karena nama adalah sebuah Identitas.Saatnya kita mengintip tentang Identitas dan Kata kunci di Python.Kita telah mempelajari sebelumnya bahwa setiap program akan selalu memanggil variabel denganmenggunakan nama dari variabel tersebut. Setiap bahasa pemrograman memiliki aturan sendiri-sendiriuntuk penamaan suatu variabel. Nama ini sering kita sebut sebagai Identitas (identifier). Python tidakmengijinkan kita untuk menggunakan beberapa kata, yang termasuk Kata Kunci (keyword), sebagainama variabel. Berikut daftar kata kunci yang terdapat dalam Python. Kata Kunci di Python & Syarat Pembuatan Variabel: False None True and as assert break



class continue def del elif else except



finally for from global if import in



is lambda nonlocal not or pass raise



return try while with yield



Interpreter Python juga telah mendefinisikan beberapa aturan untuk penamaan identitas seperti berikut ini : 1. Nama variabel tidak boleh ada spasi atau simbol-simbol seperti ? ! @ # + - % ^ & * ( ) [] { } . , ; : " ' / dan \. Tanda garis bawah ( _ ) dapat digunakan untuk mengganti spasi. Contoh: klinik_python. 2. Nama variabel harus unik. Misalkan kita ingin menyimpan empat bilangan yang berbedabeda,maka kita harus membuat empat nama varibel yang unik alias tidak boleh sama. Identitasbersifat case-sensitive, yang artinya penulisan huruf besar atau huruf kecil dianggap berbeda. Contohnya: klinikPython itu berbeda dengan KlinikPython. 3. Nama variabel dapat terdiri dari angka dan karakter. 4. Nama variabel harus dimulai dengan huruf atau tanda garis-bawah, dan selanjutnya boleh diisidengan huruf, angka (0 – 9), atau garis-bawah. Karakter pertama dari nama variabel tidak bolehberupa angka. Secara umum, kita bisa mengikuti aturan penamaan variabel seprti berikut : 1. Nama variabel harus ringkas dan bermakna. Nama harus berhubungan dengan isi dari variable tersebut. Contohnya, misalkan kita akan menyimpan data tentang umur siswa, maka namavariabel yang tepat adalah umur_siswa. 2. Nama variabel secara umum ditulis dalam huruf kecil. 3. Jika nama variabel terdiri dari dua kata, gabungkan dua kata tersebut dengan gunakan huruf besar di depan setiap kata. Atau pisahkan tiap-tiap kata dengan tanda garis-bawah. Contoh Program : # lat4.py # menggunakan variabel a = 10 b = 20 c = 30 total = (a + b + c) nama = (“ibu”) tempat = (“kantor”) print (“jumlah total = %s” % total) print(“%s pergi ke %s\t Camat” % (nama, tempat)) outputnya jumlah total = 60 ibu pergi ke kantor Menggunakan whitespace character \n \r \t \v



garis baru menghapus string sebelumnya tab vertikal tab



\e \f \b \a



escape karakter sesudahnya pada garis baru backspace bell



Contoh Penggunaan Variabel #!/usr/bin/python nama = input("Siapakah namamu?\n") print( "--------------------------------") print ("hello " + nama + ", selamat belajar python")



#!/usr/bin/python p = input(“Masukkan panjang : “) l = input(“Masukkan lebar : “) luas = int(p) * int(l) print( "maka luas persegi panjang adalah : %d" % luas)



Berikut ini penamaan variabel yang benar/tepat : alamat1 nama_karyawan nama_variabel_ini_sangat_panjang Kar#mas No_Hp Berikut ini penamaan variabel yang salah : #alamat 1Nomor No Hp



MODUL III 1. Fungsi If, If…Else, If…Elif Python memberikan cara bagaimana kita bisa menyelesaikan algoritma dengan Kondisi Bersyarat melalui pernyatan, if, if ... else, elif, dan if bersarang. Berikut ini akan kita bahas lebih detil tentang kondisi bersyarat tersebut. Pernyataan if Sama dengan bahasa pemrograman lainnya, Python juga menggunakan pernyataan if. Pernyatan if ini berisi sebuah ekspresi logika menggunakan data yang telah dibandingkan, dan menghasilkan sebuah keputusan yang dibuat berdasarkan perbandingan tersebut. Aturan penulisan untuk pernyataan if sebagai berikut: ifkondisi:     pernyataan_benar



Semua pernyataan dituliskan dengan indentasi (alinea) setelah bagian kondisi bersyarat. Python menggunakan indentasi untuk mengelompokkan satu atau beberapa pernyataan. Pada pernyataan if, syarat kondisi akan dijalankan pertama kali. Jika kondisi tersebut benar, maka pernyataan pada blok pernyataan_benar akan dijalankan. Berikut contohnya, >>> x =5 >>> ifx>0: ...     print“Hello“



Pada contoh di atas, pernyataan if akan menampilkan teks ‘Hello’ jika nilai variabel x lebih besar dari 0. Pernyataan else Pernyataan else ini biasanya digabungkan dengan pernyataan if di atas. Pernyataan else dapat berisi satu atau beberapa blok pernyataan (kode) yang mana akan dijalankan jika kondisi tersebut salah (atau tidak sesuai dengan syarat yang berlaku). Berikut syntax untuk if ... else, ifkondisi: ...     pernyataan_benar ... else: ...     pernyataan_salah



Sebagai contoh, untuk mengetahui apakah suatu bilangan merupakan genap atau ganjil, kita bisa menggunakan kode seperti berikut ini: >>>biangan=12 >>> if(bilangan%2==0): ...     print'genap' ... else: ...     print'ganjil'



Pada contoh di atas, ‘genap‘ akan ditampilkan jika sisa dari pembagian bilangan dengan 2 sama dengan 0. Dan sebaliknya jika tidak sama dengan 0, maka akan ditampilkan ‘ganjil‘. Pernyataan elif Pernyataan elif memperbolehkan kita untuk menguji beberapa kondisi bersyarat untuk tiap-tiap nilai dan menjalankan kode pernyataan yang sesuai dengan syarat yang diberlakukan. Berikut syntax dari pernyataan elif, ifkondisi_1:     pernyataan_1_benar elifkondisi_2:     pernyataan_2_benar         :         : elifkondisi_N:     pernyataan_N_benar else:     pernyataan_tidak_sesuai_syarat_di_atas



Contoh berikut ini menggunakan pernyataan elif untuk menampilkan apakah huruf yang kita input merupakan huruf vokal. Jika tidak, maka sebuah pesan lain akan ditampilkan. huruf = input("Masukkan sebuah huruf: ") if (huruf == "a"): print ("Ini adalah huruf vokal - a -") elif (huruf == "e"): print ("Ini adalah huruf vokal - e -") elif (huruf == "i"): print ("Ini adalah huruf vokal - i -") elif (huruf == "o"): print ("Ini adalah huruf vokal - o -") elif (huruf == "u"): print ("Ini adalah huruf vokal - u -") else: print ("Ini bukan huruf vokal") Pada contoh kode di atas, ketika seorang user mengetikkan sebuah huruf maka huruf tersebut akan diproses apakah huruf vokal atau bukan. Jika user mengetikkan huruf ‘a‘, maka sesuai syarat yang berlaku maka akan ditampilkan ‘Ini adalah huruf vokal – a –‘. Jika kondisinya tidak sesuai, misalkan user mengetikkan huruf ‘u‘, maka akan dilanjutkan kondisi bersyarat elif yang berikutnya sampai ditemukan kondisi yang sesuai dan akan ditampilkan hasilnya ‘Ini adalah huruf vokal – u –‘. Jika user mengetikkan huruf ‘x‘, maka tidak ada syarat yang sesuai dengan kondisi bersyarat if dan elif. Dan pernyataan else yang dijalankan yaitu ‘Ini bukan huruf vokal‘.



Pernyataan If Bersarang Pada kondisi tertentu, kita dapat menggunakan pernyataan if bersarang. Maksudnya adalah kita dapat menuliskan pernyataan if..else di dalam pernyataan if..else. Berikut contoh penggunaan if bersarang pada program untuk menentukan apakah huruf yang dimasukkan user adalah huruf besar atau huruf kecil, huruf =raw_input("Masukkan sebuah huruf: ")  if(huruf >='A'):     if(huruf ='a'):         if(huruf >>def perkalian(x, y): z = x * y return z



Pernyataan def mendefinisikan sebuah fungsi dengan nama perkalian. Paramater-parameter yang akan dilewatkan ke dalam fungsi didaftarkan dalam tanda kurung. Masing-masing paramater dipisahkan oleh koma (,).Baris deklarasi fungsi ini diakhiri dengan titik dua ( :).Tanda ini memberitahukan pada interpreter Python bahwa baris ini masih berlanjut pada baris-baris berikutnya. Perhatikan dua baris pernyataan terindentasi yang mengikutinya.Dalam Python semua pernyataan yang diindentasi dalam satu tingkatan indentasi adalah pernyataan-pernyataan yang satu derajat. Artinya semua pernyataan tersebut akan dieksekusi sesuai dengan urutan penulisannya. Dalam kasus contoh kita, pernyataan z = x + y dan return z adalah satu tingkatan. Kedua pernyataan ini adalah anggota dari deklarasi fungsi perkalian. Keduanya akan dijalankan saat fungsi dipanggil. Untuk memanggil fungsi yang telah dibuat adalah dengan cara menyebutkan nama fungsi yang bersangkutan beserta daftar parameter yang sebenarnya: >>>print (perkalian(10,8)) >>>print (perkalian(15,5))



Dalam deklarasi fungsi, Anda juga bisa menambahkan komentar-komentar yang memberi penjelasan mengenai fungsi yang dibuat.Secara umum kita memang bisa menambahkan komentarkomentar di sembarang tempat dalam program yang kita buat.Baris-baris komentar diawali dengan karakter pagar (#). Semua karakter yang mengikuti tanda ini sampai akhir baris dianggap sebagai komentar dan tidak akan mempengaruhi jalannya progam.



Akan tetapi terdapat satu gaya pemberian komentar dalam Python yang disebut dengan docstring. Biasanya dipakai untuk memberi penjelasan mengenai fungsi atau objek.Docstring diapit dengan tanda petik ganda.Komentar jenis ini hanya boleh diberikan tepat satu baris dibawah deklarasi fungsi atau objek, seperti ditunjukkan pada di bawah ini. >>>def perkalian(x, y): z = x * y return z # program utama mulai di sini >>> print (perkalian(10,8)) >>> print (perkalian(15,5))



Docstring sangat bermanfaat ketika kita ingin mendokumentasikan semua fungsi dan kelas yang telah kita buat.Karena ada beberapa perangkat lunak yang mampu membuat dokumentasi berdasarkan docstring yang ada dalam source code.



-



Scope Variabel dalam Fungsi Untuk menjelaskan konsep scope variabel dalam fungsi, lihatlah skrip di bawah ini :



# fungsi mulai di sini def swap(x, y): print ("Dalam fungsi:") print ("\tSebelum proses:") print ("\t\tNilai x", x) print ("\t\tNilai y", y) z = x x = y y = z print ("\tSetelah proses:") print ("\t\tNilai x", x) print ("\t\tNilai y", y) # program utama mulai di sini x = 12 y = 3



print ("Sebelum print ("Sebelum swap(x,y) print ("Setelah print ("Setelah



memanggil fungsi, x bernilai", x) memanggil fungsi, y bernilai", y) memanggil fungsi, x bernilai", x) memanggil fungsi, y bernilai", y)



Dalam lingkungan program utama variabel x dan y diisi dengan nilai 12 dan 3, secara berurutan. Ketika program utama memanggil fungsi swap nilai variabel ini disalin kedalam variabel x dan y dalam lingkungan fungsi, yang kebetulan sama namanya dengan nama variabel dalam progam utama. Python akan membuat alokasi memori tersendiri untuk fungsi. Karena alokasi memorinya berbeda, maka perubahan yang terjadi pada variabel dalam fungsi, katakanlah x, tidak akan mengubah variabel x yang terdapat dalam program utama. Jadi bisa dikatakan variabel x dalam fungsi swap hanya mempunyai scope dalam fungsi itu sendiri. Pernyataan ini bisa dibuktikan dengan menjalankan skrip tersebut.Hasilnya sebagai berikut.Variabel program utama tetap nilainya, meskipun variabel dalam fungsi swap berubah nilainya. Sebelum memanggil fungsi, Sebelum memanggil fungsi, Dalam fungsi: Sebelum proses: Nilai x 12 Nilai y 3 Setelah proses: Nilai x 3 Nilai y 12 Setelah memanggil fungsi, Setelah memanggil fungsi,



-



x bernilai 12 y bernilai 3



x bernilai 12 y bernilai 3



Melewatkan Argumen dengan Kata Kunci



Kalau kita perhatikan kembali fungsi perkalian sebelumnya, proses penyalinan ke variabel lokal sesuai dengan urutan deklarasi fungsi yang kita panggil. Jika fungsi perkalian kita panggil dengan memberi pernyataan perkalian(10,8), maka nilai 10 akan disalin ke variabel x dan nilai 8 ke variabel y. Kadang-kadang ini agak menyulitkan jika kita membuat fungsi dengan jumlah variabel yang cukup banyak, sementara urutannya harus tepat. Solusinya adalah dengan menyebutkan kata-kunci (keyword) yang kita pakai pada saat mendefinisikan fungsi. Kita ubah sedikit program perkalian kita agar pembahasan di bagian ini lebih jelas.Perhatikan program di bawah. def perkalian(x, y): z = x * y print ("Nilai x =",x) print ("Nilai y =",y) print ("x * y =",z) # program utama mulai di sini perkalian(10,2) print perkalian(y=15,x=5)



Hasilnya: Nilai x = 10 Nilai y = 2 x * y = 20 Nilai x = 5 Nilai y = 15 x * y = 75



Dengan menyebutkan kata kunci yang kita buat saat mendeklarasikan program kita dapat mengubah urutan penyalinan argumen.Akan tetapi Anda harus berhati-hati ketika menyebutkan katakunci, karena tidak boleh ada duplikasi. Panggil fungsi perkalian dengan pernyataan perkalian(15,x=5), maka Anda akan mendapatkan pesan kesalahan sbb.: Traceback (innermost last): File "./listing8.py", line 13, in ? perkalian(15,x=5) TypeError: keyword parameter redefined



Hasil ini menunjukkan pada kita bahwa nama x sudah dipakai. Dengan melihat pada definisi fungsi yang telah dibuat, parameter pertama adalah x dan kedua adalah y. Jadi ketika kita panggil dengan menyebutkan parameter kedua sebagai x juga akan terjadi kesalahan.



-



Nilai Awal Argumen



Dalam proses interaksi dengan pengguna program kadangkala program memberikan pilihan tertentu, yang sering disebut dengan nilai bawaan (default). Nilai awal argumen ini bisa kita berikan saat kita membuat definisi fungsi. Lihat cara mendeklarasikan nilai awal argumen ini: def login(username="guest", password="[email protected]"): print ("Your username ",username) print ("Your password ",password) print() login() login("tamu") login("tamu", "katakunci")



Sekarang proses pemanggilan fungsi tidak perlu menyebutkan argumennya secara lengkap, jika kita tidak perlu mengubah nilai default yang telah diberikan. Your username Your password



guest [email protected]



Your username Your password



tamu [email protected]



Your username Your password



tamu katakunci



Dengan membandingkan antara isi program dan hasilnya di atas, dapat kita simpulkan bahwa penyalinan argumen tetap mengikuti kaidah urutan pada saat dideklarasikan. Anda tidak diperbolehkan mendefinisikan fungsi seperti ini: def login(username="guest", password): print ("Your username ",username) print ("Your password ",password) print()



Akan tetapi Anda bisa mendeklarasikan fungsi seperti potongan program berikut. def login(username, password="[email protected]"): print ("Your username ",username) print ("Your password ",password) print()



Jadi nilai default hanya boleh diberikan kepada deretan akhir parameter.Setelah pemberian nilai default, semua parameter di belakangnya juga harus diberi nilai default. Satu catatan, nilai awal argumen akan dievaluasi pada saat dideklarasikan. Perhatikan contoh berikut. usernm="guest" passwd="[email protected]" def login(username=usernm, password=passwd): print ("Your username ",username) print ("Your password ",password) print() usernm="tamu" passwd="[email protected]" login()



Hasilnya:



Your username Your password



guest [email protected]



Contoh Program : Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>>def Biodata(): nim=input("NIM :") if(nim)=="1105020022": nama="Israuddin" elif (nim)=="1105020012": nama="Mahmuddin" else: nama="Kuswadinur" fakultas=input("Fakultas :") prodi=input("Prodi :") print("") print("NIM :",nim)



print("Nama :",nama) print("Fakultas :",fakultas) print("Program Studi :",prodi)



MODUL IV Perintah perulangan di gunakan untuk mengulang pengeksekusian statemen-statemen hinggaberkali-kali sesuai dengan iterasi yang diinginkan. Dalam python, perintah untuk perulangan (loop)adalah while dan for . 1. Perintah While Perintah while pada python merupakan perintah yang paling umum digunakan untuk prosesiterasi. Konsep sederhana dari perintah while adalah ia akan mengulang mengeksekusi statemen dalamblok while selama nilai kondisinya benar. Dan ia akan keluar atau tidak melakukan eksekusi blokstatemen jika nilai kondisinya salah. Bentuk umum statemen while, while (kondisi) : statemen Contoh penggunaan while : contoh 1 : >>> while True : print "Tekan CTRL + C untuk Stop" Pada contoh 1, merupakan contoh sederhana penggunaan while. Pada contoh di atasprogram akan terus mengeksekusi statemen dalam badan while, dikarenakan kondisinya selalubenar (true). Kondisi seperti ini disebut infinite loop.i contoh 2 : >>> x = "Gunadarma" >>>while x: print(x, “ “) x = x[1:] hasil : Gunadarma unadarma nadarma adarma darma arma rma ma a contoh 3 : >>> a = 0; b = 10 >>>while a < b : print(a,” “)



a = a + 1 hasil : 0 1 2 3 4 5 6 7 8 9 2. Perintah For Perintah for dalam python mempunyai ciri khas tersendiri dibandingkan dengan bahasapemrograman lain. Tidak hanya mengulang bilangan-bilangan sebuah ekspresi aritmatik, ataumemberikan keleluasaan dalam mendefinisikan iterasi perulangan dan menghentikan perulangan pada saat kondisi tertentu.Dalam python, statemen for bekerja mengulang berbagai macam tipe datasekuensial seperti List, String, dan Tuple. Bentuk umum perintah for, for (variabel) in (objek) : statemen else: statemen Contoh penggunaan for : Contoh 1 :>>> for i in [5, 4, 3, 2, 1]: print(i,” “) hasil: 5 4 3 2 1 Pada contoh 1, perintah perulangan terjadi dimana data-data untuk iterasi (objek) beradadalam List. Jadi elemen-elemen yang berada dalam List akan di masukkan (assign) ke dalam variable target yaitu i. Contoh 2. >>> T = [(1,2), (3,4), (5,6)] >>>for (a,b) in T : print (a,b) Hasil: (1, 2) (3, 4) (5, 6) Pada contoh 2, merupakan penggunaan tipe data Tuple untuk proses perulangan. Elemenpada tuple akan di assign kedalam variabel a dan b. Contoh 3 :>>> nama = ['budi', 'andi', 'rudi', 'sandi'] >>>usia = [20, 18, 22, 19] >>>for i in range(len(nama)) : print nama[i], ' berusia ', usia[i], ' tahun' hasil: budi berusia 20 tahun andi berusia 18 tahun



rudi berusia 22 tahun sandi berusia 19 tahun 3. Perintah Break, Continue dan Pass Perintah Break Perintah break digunakan untuk menghentikan jalannya proses iterasi pada statemen foratau while. Statemen yang berada di bawah break tidak akan di eksekusi dan program akan keluar dariproses looping. -



Contoh break : >>> x = 1 >>>while(x < 5): if(x == 3): break print(x) x = x+1 else: print("Loop sdh selesai dikrjkn") hasil: 1 2 Perintah Continue Statemen continue menyebabkan alur program kembali ke perintah looping. Jadi jikadalam sebuah perulangan terdapat statemen continue, maka program akan kembali ke perintah loopinguntuk iterasi selanjutnya. Contoh continue : >>> n = 10 >>>while n: n = n - 1 if n % 2 != 0: continue print n hasil: 8 6 4 2 Perintah Pass Statemen pass mengakibatkan program tidak melakukan tindakan apa-apa. Perintah passbiasanya digunakan untuk mengabaikan suatu blok statemen perulangan, pengkondisian,



class, danfungsi yang belum didefinisikan badan programnya agar tidak terjadi error ketika proses compilasi. Contoh program pass :#program tidak akan melakukan #proses looping while True : pass LATIHAN MEMBUAT PROGRAM DENGAN FOR, WHILE, DAN BREAK >>> a=1 >>>while a>> a=0 >>>while a>> a=1 >>>while a6: ... break 123456 >>>while 1: ... print 'perulangan tiada batas, tekan ^C Untuk berhenti' ... perulangan tiada batas, tekan ^C untuk berhenti ...... >>> a=1 >>>while a>>for a in range(1,5): ... print a, ... 1234 >>>for a in range(1,10,2): ... print '%d bilangan ganjil'%a ... 1 bilangan ganjil 3 bilangan ganjil 5 bilangan ganjil 7 bilangan ganjil 9 bilangan ganjil >>>bulan={1:'januari',2:'februari',3:'maret',4:'april',5:'mei'} >>>for a in bulan.values(): ... print a ... januari februari maret april mei >>> s='ini sebuah string' >>>for a in s: ... print a, ... inisebuahstring >>> t=1,'aku',5.6,6666666,['a','b','c'] >>>for a in t: ... print a, ... 1 aku 5.6 6666666 ['a', 'b', 'c'] >>>for a in t[4]: ... print a, ... abc Coba perhatikan bagian perulangan for, python melakukannya dengan sangat teliti dan efisien.Kitadapat memecah elemen data pada objek string, list, tuple, dan dictionary dengan sangat mudah. Cetak Segitiga * x = "********" while x: print x + ' ' x = x[1:] ******** ******* ******



***** **** *** ** *



MODUL V 1. Belajar Tkinter Pada bagian ini, kita akan belajar tentang Tkinter untuk membuat sebuah aplikasi berbasis GUI (Graphical User Interface) di Python. adalah pustaka standart yang dimiliki oleh Python.Kombinasi Python dan Tkinter ini menghasilkan sebuah tampilan grafik yang menarik sekaligus mudah untuk membuatnya.Tkinter menyediakan berbagai komponen grafis diantaranya tombol, label, kotak teks, yang mana komponen-komponen ini sangatlah sering digunakan dalam aplikasi GUI.Komponen Tkinter ini sering kita sebut widget. Tkinter



Berikut langkah-langkah sederhana untuk membuat aplikasi GUI berbasis Tkinter di Python: 1. 2. 3. 4.



Memanggil modul Tkinter. Membuat jendela aplikasi GUI. Menambahkan komponen pada aplikasi. Menuliskan kode mainloop.



Memanggil Modul Tkinter Modul Tkinter berisi berbagai kelas dan komponen yang diperlukan untuk membangun sebuah aplikasi GUI.Untuk menggunakan komponen Tkinter, kita harus memanggilnya terlebih dahulu. Contoh di bawah ini akan menunjukkan bagaimana kita memanggil modul Tkinter. import Tkinter



Kita juga bisa memanggil semua metode, kelas, dan atribut dari modul Tkinter dengan menggunakan cara seperti di bawah ini. from Tkinter import *



Membuat Jendela Aplikasi GUI Setiap aplikasi GUI seharusnya memiliki sebuah jendela utama (root window), yang dapat berisi berbagai komponen yang diperlukan dalam aplikasi yang akan dibuat. Untuk membuat jendela utama dari suatu aplikasi, kita menggunakan pernyataan seperti berikut:



top = Tkinter.Tk()



Jika kita menggunakan pernyataan from-import untuk memanggil modul Tkinter, maka kita cukup menuliskan: top = Tk()



Menambahkan Komponen Pada Aplikasi Dengan menggunakan Tkinter, kita dapat menambahkan beberapa komponen pada aplikasi yang kita buat.Komponen ini bisa berdiri sendiri atau dapat diisi komponen lain (disebut Container). Komponen yang berdiri sendiri merupakan komponen yang tidak dapat diisi oleh komponen lain, misalkan tombol, cekbox, dan label. Komponen container merupakan komponen yang bisa berisi/ditempeli oleh komponen lain seperti frame dan window. Komponen-komponen Tkinter KOMPONEN DESKRIPSI Button Komponen Button berfungsi untuk menampilkan sebuah tombol. Komponen Canvas digunakan untuk menggambar bentuk seperti garis, lingkaran, Canvas poligon, dan kotak. Komponen Checkbutton berfungsi menampilkan sejumlah pilihan yang ditandai Checkbutton dengan tanda ‘centang’. Pengguna aplikasi dapat memilih lebih dari satu pilihan. Komponen Entry berfungsi menampilkan kotak teks satu-baris untuk menerima Entry masukan dari pengguna. Frame Komponen Frame berfungsi sebagai kontainer bagi komponen lain. Komponen Label berfungsi memberikan keterangan untuk komponen lain. Label Komponen ini juga dapat diisi gambar. Listbox Komponen Listbox berfungsi menyediakan daftar pilihan untuk pengguna. Menubutton Komponen Menubutton berfungsi menampilkan menu. Komponen Menu berfungsi memberikan berbagai perintah kepada pengguna. Menu Perintah-perintah ini juga tercantum dalam Menubutton. Komponen Message berfungsi menampilkan teks yang terdiri dari sejumlah baris Message untuk menerima beberapa nilai dari pengguna. Komponen Radiobutton berfungsi menampilkan sejumlah pilihan dalam bentuk Radiobutton tombol radio. Scale Komponen Scale berfungsi menampilkan skala geser. Komponen Scrollbar berguna untuk menambahkan fungsi geser (scroll) pada Scrollbar beberapa komponen, seperti komponen Listbox. Text Komponen Text berfungsi menampilkan teks dalam multi baris. Komponen Toplevel digunakan untuk membuat sebuah kontainer window yang Toplevel terpisah. Menambahkan Kode mainLoop



Setelah kita mendesain sebuah aplikasi, tentu saja dengan menambahkan beberapa komponen di dalamnya, kita perlu mengeksekusi program tersebut. Ketika sebuah program kita eksekusi, maka program tersebut akan mengalami perputaran tak berhingga (infinite loop). Kode untuk memasukkan program kita dalam kondisi perputaran ini yaitu Tkinter.mainloop()



Jika kita menggunakan from-import untuk mengambil semua fungsi pada Tkinter, kita cukup menuliskan root.mainloop()



dengan root pada kode di atas mengacu pada window utama (toplevel). Berikut ini merupakan sebuah listing program untuk menampilkan sebuah window. # file: winTk.py  importTkinter  root =Tkinter.Tk()  # Kode untuk menambahkan komponen  root.mainloop()



Kita juga bisa menuliskan kode di atas seperti ini, # file: winTk1.py  fromTkinter import*  root =Tk()  # Kode untuk menambahkan komponen  root.mainloop()



Tampilan yang dihasilkan dari program di atas seperti berikut ini,



2. Manajemen File (bagian 1)



Pada saat kita bermain dengan interpreter bahasa Pemrograman Python, kita dapat dengan mudah memasukkan dan menampilkan data.Apa jadinya jika kita keluar dari interpreter tersebut? Kemana data kita tadi? Untuk menyimpan data yang dapat kita gunakan kembali lain waktu, kita dapat menyimpannya dalam sebuah file. Selain menyimpan, kita juga dapat membaca isi dari file tersebut. Nah, pada kesempatan ini, kita akan belajar tentang bagaimana manajemen file di Pemrograman Python. So…Tunggu apalagi…saatnya ke TeKaPe!



Obyek file mempunyai fungsi built-in dan beberapa metode yang membantu kita dalam mengakses berbagai tipe file. Pada bahasa Pemrograman Python, fungsi built-in open() akan selalu digunakan pada setiap operasi file. Fungsi open() ini akan mengembalikan sebuah obyek file, dimana kita dapat melakukan berbagai aksi pada suatu file. Fungsi open() Kita harus menggunakan fungsi open() untuk membuka sebarang tipe file. Syntax dari fungsi open() seperti berikut: file_obyek = open(nama_file [, mode_akses][, buffer])



Argumen nama_file adalah sebuah string yang berisi nama file yang akan kita akses. Sedangkan dua argumen, mode_akses dan buffer, merupakan argumen yang bersifat optional.mode_akses berfungsi untuk menentukan mode pada file yang akan dibuka. buffer berfungsi untuk menentukan tipe buffering yang akan diberikan saat mengakses file. Berikut contoh penggunaan fungsi open(), 1>>> filedata =open('/home/mrbiggie/filedemo', 'r')



Pada contoh di atas, kita sedang membuka filedemo yang berada pada direktori /home/mrbiggie dalam mode baca.Sedangkan argumen buffer menggunakan buffering sistem. Nah sekarang kita akan membahas tentang berbagai mode akses untuk membuka sebuah file. ModeAkses Default akses dari sebuah file adalah mode baca (‘r’). Mode lain yang sering digunakan adalah mode tulis (‘w’) dan tambah (‘a’). Untuk membuka file dalam mode baca, file harus dibuat dahulu. Kita bisa menggunakan mode tulis atau tambah pada file yang telah ada atau file baru. Ketika kita membuka file yang sudah ada dengan mode tulis, maka isi dari file tersebut akan terhapus dan isi yang baru akan dituliskan pada file tersebut. Ketika kita menggunakan mode tambah (a) untuk mengakses file yang telah ada, maka kita akan menambahkan data yang baru setelah data lama. Jika kita mengakses file baru dengan mode baca dan tambah, maka file akan secara otomatis dibuat sebelum data diisikan. Apakah bahasa Pemrograman Python dapat mengakses file binari? Untuk mengakses file binari, kita harus menambahkan huruf ‘b‘ pada mode akses normal (‘wb’, ‘rb’, ‘ab’). Contoh berikut adalah bagaimana kita membuka file filetes dalam mode binari-tulis (‘wb’): 1namafile =open('c:/klinikpython/filetes', 'wb')



3. MANAJEMEN FILE (BAGIAN 2) Semangat Pagi, PythonMania!!!… Artikel kali ini merupakan lanjutan dari artikel sebelumnya, MANAJEMEN FILE (BAGIAN 1).Oiya, mungkin dari PythonMania ada yang bertanya, Kenapa harus belajar tentang File di bahasa Pemrograman Python? Yup! Karena File itu penting!…(jawaban ringkas dan padat…:) ). Jadi, It’s ShowTime!…. Metode-Metode dari Objek File Untuk membaca atau menulis isi dari sebuah file, bahasa Pemrograman Python menyediakan beberapa metode (atau cara) yang berbeda-beda. Nah, kita akan belajar beberapa metode yang sangat berguna untuk menuliskan suatu data dalam sebuah file.



Menuliskan Data pada Sebuah File Metode write() berfungsi untuk menuliskan suatu data teks pada sebuah file. Teks ini dapat terdiri dari kumpulan kata dalam satu baris atau beberapa baris. Metode write() tidak dapat menambahkan baris baru secara otomatis. Jika kita ingin menambahkan baris baru, maka kita harus menambahkan karakter NEWLINE, ‘\n‘, di akhir baris. Contoh berikut akan menampilkan penggunaan metode write(): 1>>> file_tes =open('ujifile.dat', 'w')



2>>> file_tes.write('Teks baris pertama\n') 3>>> file_tes.write('Teks baris kedua\n')



Dari kode di atas, baris pertama menyatakan untuk membuka file ujifile.dat dalam mode tulis. Kemudian, baris kedua menyatakan untuk menuliskan ‘Teks baris pertama’ pada file dan menambahkan sebuah baris baru.Sedangkan baris terakhir menyatakan penambahan teks ‘Teks baris kedua’ disertai baris baru.Pada baris kedua dan ketiga, penambahan baris baru ditandai dengan suatu karakter ‘\n‘. Kita juga dapat menggunakan metode writelines() untuk menuliskan daftar teks pada sebuah file. Sama seperti metode write(), metode writelines() tidak bisa menambahkan baris baru secara otomatis. Jika kita tidak menambahkan karakter NEWLINE, maka metode writelines() akan menuliskan isi dari daftar tersebut sebagai sebaris teks. Berikut ini ilustrasi dari penggunaan metode writelines(): 1>>> daftar =['satu', 'dua', 'tiga'] 2>>> i =0 3>>> forx indaftar: 4    daftar[i] =x+'\n' 5    i +=1 6>>> filedata =open('d:/filetes.dat', 'w') 7>>> filedata.writelines(daftar)



Pada kode di atas, baris pertama membuat sebuah list daftar yang berisi tiga data. Kemudian, menambahkan karakter NEWLINE pada akhir tiap-tiap data dari list daftar dengan menggunakan pengulangan for. Selanjutnya, fungsi open() digunakan untuk membuka file filetes.dat dengan mode tulis dan metode writelines() menuliskan data-data dari daftar ke dalam file filetes.dat. Setiap data dari daftar akan dituliskan dalam baris baru dengan penambahan karakter ‘\n‘.



4. Input Data Anda Dengan Entry Apa kabar PythonMania? Yes! Semoga SEHAT semuanya dan tambah SUKSES.Amin. Pertemuan kita kali ini sangatlah spesial, karena kita akan kembali belajar GUI Python tentunya dengan Tkinter. Tips Tkinter kali ini adalah “Bagaimana Caranya Meng-input Data di Tkinter?”.



Dahsyatnya ENTRY – Tkinter Yup! Benar! Dengan komponen Entry, kita bisa melakukan proses input dan output di Tkinter, GUI tercinta bawaan Python. Nah, apa dan bagaimana tentang Entry? Simak pembelajaran kita kali ini…Komponen Entry digunakan untuk menerima masukan berupa teks satu-baris dari user.Berikut penulisan syntax untuk menampilkan komponen Entry dalam aplikasi kita. contohEntry = Entry(top)



Sama seperti komponen Label, kita dapat menggunakan beberapa pilihan pada komponen Entry. Berikut daftar beberapa pilihan (option) pada komponen Entry: Macam-macam Option pada komponen Entry OPTION DESKRIPSI Bd bdberfungsi untuk menentukan ketebalan dari komponen Entry. Bg bgberfungsi untuk memberikan warna background dari komponen Entry. Fg fgberfungsi untuk memberikan warna teks dari komponen Entry. Font fontberfungsi untuk menentukan jenis font yang digunakan pada komponen Entry. reliefberfungsi untuk menentukan jenis batas. Terdapat beberapa pilihan yaitu: SUNKEN, relief RAISED, GROOVE, dan RIDGE.



Kode berikut ini merupakan kombinasi dari beberapa pilihan (option) yang diberikan kepada komponen Entry. contohEntry = Entry(top, bd=5, fg="red", relief=RAISED)



Kode di atas akan menampilkan sebuah komponen Entry pada window utama top. Ketebalan window ini adalah 5 pixel, dan warna dari teks adalah merah.



Berikut ini kode lengkap untuk menampilkan sebuah komponen Entry: # file: tesEntry.py # using Python 3.2  fromtkinter import*  top =Tk()  contohEntry =Entry(top, bd=5, fg="red", relief=RAISED) contohEntry.pack()  top.mainloop()



Selain memberikan beberapa pilihan (option), komponen Entry juga mempunyai beberapa metode (atau fungsi). Macam-macam Option pada komponen Entry METODE KEGUNAAN CONTOH Memasukkan teks sesuai dengan contohEntry.insert(INSERT, "Halo insert(index, indeks. Beberapa nilai yang sering PythonMania!") text) digunakan sebagai indeks adalah Pernyataan ini akan menambahkan Halo INSERT dan END PythonMania!pada posisi kursor terakhir. contohEntry.delete(1) delete(index)



Menghapus karakter sesuai indeks.



delete(from, to)



Menghapus karakter sesuai range Pernyataan ini akan menghapus semua yang ditentukan. karakter yang ada dalam Entry.



get()



Mengambil data yang ada dalam teks Pernyataan ini akan mengambil isi dari Entry. komponen Entry.



Pernyataan ini akan menghapus karakter pada indeks posisi 1. contohEntry.delete(0,



END)



contohEntry.get()



OK!…Kini kita sudah tahu bagaimana caranya meng-input data di Tkinter…Begitu Mudah Kan?



MODUL VI



1. Tampilkan Teks Dengan LABEL Python Pada artikel 3 Komponen Dasar, kita telah membahas secara singkat tentang komponen Label, Entry, dan Button. Saat ini kita akan jelaskan lebih mendetail, dimulai dari komponen Label tentunya dari Tkinter Python. Selamat menikmati…



Komponen Label Komponen Label berfungsi menampilkan suatu teks atau memberikan keterangan untuk komponen lainnya.Kita juga bisa menampilkan gambar pada Label.Berikut listing program untuk menampilkan label teks pada sebuah aplikasi sederhana. teksLabel = Label(root, text="Hello World")



Pada kode di atas,



1. rootmenunjuk pada jendela dimana komponen Label akan ditampilkan. 2. textdigunakan untuk menampilkan teks apa yang akan kita tampilkan pada Label. Kita juga dapat menentukan lebar dan tinggi dari sebuah Label dengan menggunakan opsi width dan height. Berikut contohnya, teksLabel = Label(root, text="Hello World", width=20, height=5)



Di bawah ini akan kita tampilkan listing program untuk menampilkan sebuah Label pada suatu jendela (window). # file: ujiLabel.py # versi: Python 3.2 # untuk versi Python 2.x..gunakan # from Tkinter import *  fromtkinter import*  root =Tk()  teksLabel =Label(root, text="Hello World", width=20, height=5) teksLabel.pack()  root.mainloop()



Tampilan sebuah jendela yang berisi Label "Hello World" Jika Label digunakan untuk menampilkan teks, maka satuan ukuran label dalam satuan teks. Jika Label digunakan untuk menampilkan gambar, maka satuan ukurannya dalam satuan pixel. Tabel berikut akan menampilkan beberapa perintah yang dapat kita gunakan pada komponen Label ini. Opsi Perintah pada Komponen Label OPSI DESKRIPSI Bitmap pilihan bitmap yang akan ditampilkan. borderwidth ketebalan garis tepi dari Label. Bg warna latar belakang dari Label. Fg warna latar depan dari Label. Font jenis font untuk teks yang akan ditampilkan. pengaturan letak untuk teks berbaris. Beberapa pilihannya adalah LEFT, RIGHT, Justify atau CENTER.



Wow!…Selamat untuk Anda yang saat ini sudah lebih pintar bekerja dengan komponen Label Tkinter! Terus Mencoba! Gagal, Coba lagi, Gagal, Coba lagi…Keajaiban akan datang untuk Anda!



3.



Aplikasi Data Sederhana di Python



Saatnya sekarang kita mempelajari bagaimana membuat aplikasi data sederhana di Python, tentunya masih dengan Tkinter. Ayo langsung saja!



Penjelasan Singkat Program: 1. Program menggunakan Tkinter beserta komponennya, diantaranya adalah Button, Entry, Label, Listbox, dan Frame. 2. Tata layout komponen menggunakan gabungan Pack() dan Grid(). 3. Data disimpan dalam bentuk Tuple yang berisi beberapa data List. Kode Program: # # # # #



file: datListbox.py versi: Python 3.2 Dasar pemrograman GUI dengan data sederhana untuk selanjutnya kita akan belajar menggunakan database SQLite.



 



fromtkinter import*



  classDemoListbox:     def__init__(self, parent, title):         self.parent =parent



 



        self.parent.title(title)         #self.parent.geometry("600x400")         self.parent.protocol("WM_DELETE_WINDOW", self.onKeluar)



          self.dataSiswa =(             ["1", "Ayu Silvia", "Malang", "0341-672541", "6 SD"],



            ["2", "Beni Wahyudi", "Malang", "0341-435271", "6 SD"],             ["3", "Cahyo Gunawan", "Malang", "0341-123456", "6 SD"],             ["4", "Derbi Ratno", "Malang", "0341-234567", "6 SD"],             ["5", "Deasy Ratna", "Malang", "0341-213212", "6 SD"],             ["6", "Purba Swari", "Malang", "0341-343434", "6 SD"],             ["7", "Erik Kurniawan", "Malang", "0341-212121", "6 SD"],             ["8", "Restu Singgih", "Malang", "0341-567489", "6 SD"],             ["9", "Sri Utami", "Malang", "0341-867855", "6 SD"],             ["10", "Jesica Rahma", "Malang", "0341-555432", "6 SD"],             ["11", "Lukita Willi", "Malang", "0341-111121", "6 SD"],             ["12", "Rohandi Yusuf", "Malang", "0341-768594", "6 SD"],             ["13", "Bakar Agung", "Malang", "0341-536829", "6 SD"],             ["14", "Romi Kuliti", "Malang", "0341-986794", "6 SD"],             ["15", "Den Bagus", "Malang", "0341-324689", "6 SD"])



          self.aturKomponen()         self.aturKejadian()         self.isiListbox()         self.isiData()



          self.listboxData.focus_set()



 



    defaturKejadian(self):         self.listboxData.bind('', self.onKlikLB)         self.listboxData.bind('', self.onKlikLB)



      defonKlikLB(self, event=None):         self.isiData()



      defisiData(self):         indeks =self.listboxData.curselection()         kode =int(indeks[0])



 



        # hapus data         self.entNomor.delete(0, END)         self.entNama.delete(0, END)         self.entAlamat.delete(0, END)         self.entTelp.delete(0, END)         self.entKelas.delete(0, END)



 



        # isi data         self.entNomor.insert(END, self.dataSiswa[kode][0])         self.entNama.insert(END, self.dataSiswa[kode][1])         self.entAlamat.insert(END, self.dataSiswa[kode][2])         self.entTelp.insert(END, self.dataSiswa[kode][3])         self.entKelas.insert(END, self.dataSiswa[kode][4])



 



    defisiListbox(self):         fordat inrange(len(self.dataSiswa)):             self.listboxData.insert(END, self.dataSiswa[dat][1])



          self.listboxData.selection_set(0)



 



    defaturKomponen(self):



        mainFrame =Frame(self.parent)         mainFrame.pack(fill=BOTH, expand=YES)



          self.statusBar =Label(mainFrame, text="www.KlinikPython.Wordpress.Com",                                relief=SUNKEN, bd=1)         self.statusBar.pack(side=BOTTOM, fill=X)



          # frame_kiri         fr_kiri =Frame(mainFrame, bd=10)         fr_kiri.pack(fill=BOTH, expand=YES, side=LEFT)



 



        scroll =Scrollbar(fr_kiri, orient=VERTICAL)         self.listboxData =Listbox(fr_kiri, width=30,                                    yscrollcommand=scroll.set)



          self.listboxData.pack(fill=Y, side=LEFT)         scroll.configure(command=self.listboxData.yview)         scroll.pack(side=LEFT, fill=Y)          



 



        # frame_kanan         fr_kanan =Frame(mainFrame, bd=10)         fr_kanan.pack(fill=BOTH, expand=YES, side=RIGHT)



          # fr_kanan_atas         fr_katas =Frame(fr_kanan)         fr_katas.pack(side=TOP, expand=YES)



 



        # data Nomor         Label(fr_katas, text='Nomor Urut').grid(             row=0, column=0, sticky=W)         self.entNomor =Entry(fr_katas)         self.entNomor.grid(row=0, column=1)



          # data Nama         Label(fr_katas, text='Nama Lengkap').grid(             row=1, column=0, sticky=W)         self.entNama =Entry(fr_katas)         self.entNama.grid(row=1, column=1)



 



        # data Alamat         Label(fr_katas, text='Alamat').grid(             row=2, column=0, sticky=W)         self.entAlamat =Entry(fr_katas)         self.entAlamat.grid(row=2, column=1)



          # data NoTelp         Label(fr_katas, text='No. Telp').grid(             row=3, column=0, sticky=W)         self.entTelp =Entry(fr_katas)         self.entTelp.grid(row=3, column=1)



 



        # data Kelas



        Label(fr_katas, text='Kelas').grid(             row=4, column=0, sticky=W)         self.entKelas =Entry(fr_katas)         self.entKelas.grid(row=4, column=1)



          # fr_kanan_bawah         fr_kawah =Frame(fr_kanan)         fr_kawah.pack(side=BOTTOM, expand=YES)



 



        self.btnAwal =Button(fr_kawah, text='',                                    command=self.onAkhir, width=5)         self.btnAkhir.pack(side=LEFT)



 



    defonAwal(self, event=None):         datIndex =self.listboxData.curselection()



 



        self.listboxData.selection_clear(int(datIndex[0]))         self.listboxData.selection_set(0)         self.listboxData.activate(0)                   self.isiData()           defonPrev(self, event=None):         datIndex =self.listboxData.curselection()



 



        ifint(datIndex[0]) ==0:             pass         else:             self.listboxData.selection_clear(int(datIndex[0]))             self.listboxData.selection_set(int(datIndex[0])-1)             self.listboxData.activate(int(datIndex[0])-1)                       self.isiData()           defonNext(self, event=None):         jumDat =len(self.dataSiswa)         datIndex =self.listboxData.curselection()



 



        ifint(datIndex[0]) ==jumDat-1:             pass         else:             self.listboxData.selection_clear(int(datIndex[0]))



            self.listboxData.selection_set(int(datIndex[0])+1)             self.listboxData.activate(int(datIndex[0])+1)                       self.isiData()               defonAkhir(self, event=None):         jumDat =len(self.dataSiswa)         datIndex =self.listboxData.curselection()



          self.listboxData.selection_clear(int(datIndex[0]))         self.listboxData.selection_set(jumDat-1)         self.listboxData.activate(jumDat-1)                   self.isiData()                  defonKeluar(self, event=None):         self.parent.destroy()



  if__name__ =='__main__':     root =Tk()



      aplikasi =DemoListbox(root, "Demo Listbox - Aplikasi Data di Python")



 



    root.mainloop()



OK! Selamat Menikmati Pelajaran Kali ini, Kami Yakin Anda Pasti BISA!!



4.



Tiga (3) Komponen Dasar



Yup! Cukup dengan 3 komponen dasar ini, yaitu Label, Button, dan Entry, kita bisa membuat sebuah aplikasi sederhana berbasis Python Tkinter. Saya akan membahas sekilas saja tentang ketiga komponen ini. Pada dasarnya hampir sama dengan komponen-komponen visual yang ada di pemrograman lain. Namun komponen ini adalah Tkinter, yang pastinya menggunakan Python. So..saatnya kita rasakan aroma Tkinter yang begitu spesial! (A) Komponen Button Komponen Button ini berfungsi untuk menampilkan sebuah tombol pada aplikasi. (B) Komponen Label Komponen Label ini berfungsi untuk memberikan sebuah nama pada komponen lain dalam satu baris. (C) Komponen Entry Komponen Entry ini berfungsi untuk menampilkan sebuah teks satu baris dan juga untuk menerima masukan data dari pengguna aplikasi.



Kode Python :: Program Pembayaran # # # #



file: progPembayaran.py Sumber Inspirasi: Dasar Pemrograman Delphi 5.0 - Abdul Kadir Re-Coding dengan Python pada tanggal : 30/10/2011 Penulis: KlinikPython



  # memanggil paket Tkinter -- berlaku untuk Python 2.xx fromTkinter import*  # program ditulis dengan menggunakan teknik # Pemrograman Berorientasi Objek. # menggunakan kelas ProgramPembayaran classProgramPembayaran:     def__init__(self, parent, title):         self.parent =parent                   # mengatur ukuran window utama.         # self.parent.geometry("300x200")         # mengisi judul window utama.         self.parent.title(title)         # memberikan arahan ke perintah onKeluar, jika kita         # mengklik tanda X (Close) di wondow utama.         self.parent.protocol("WM_DELETE_WINDOW", self.onKeluar)                   # membuat fungsi aturkomponen() yang berfungsi untuk         # menyusun letak komponen yang akan kita tampilkan         # pada aplikasi Python.         self.aturKomponen()               defaturKomponen(self):         # mengatur frame sebagai kontainer utama bagi komponen         # Button, Label, dan Entry, dengan batas tepi "10".         # disusun menggunakan layout manager -- Pack()         # (tentang Pack akan kita bahas di pertemuan berikutnya.)         mainFrame =Frame(self.parent, bd=10)         mainFrame.pack(fill=BOTH, expand=YES)                   # pasang komponen::         Label(mainFrame, text='Total Pembelian').grid(row=0, column=0,             sticky=W, padx=5, pady=5)         self.entPembelian =Entry(mainFrame)



        self.entPembelian.grid(row=0, column=1, padx=5, pady=5)         self.btnHitung =Button(mainFrame, text='Hitung',             command=self.onHitung)         self.btnHitung.grid(row=0, column=2, padx=5, pady=5)                   Label(mainFrame, text='Pajak (10%)').grid(row=1, column=0,             sticky=W, padx=5, pady=5)         self.entPajak =Entry(mainFrame)         self.entPajak.grid(row=1, column=1, padx=5, pady=5)                   Label(mainFrame, text='Total Pembayaran').grid(row=2, column=0,             sticky=W, padx=5, pady=5)         self.entPembayaran =Entry(mainFrame)         self.entPembayaran.grid(row=2, column=1, padx=5, pady=5)           # fungsi "onHitung" berfungsi untuk menghitung total pembayaran.        defonHitung(self, event=None):         totalPembelian =int(self.entPembelian.get())         pajak =0.1*totalPembelian         totalPembayaran =1.1*totalPembelian                   self.entPajak.delete(0, END)         self.entPembayaran.delete(0, END)                   self.entPajak.insert(END, str(pajak))         self.entPembayaran.insert(END, str(totalPembayaran))               defonKeluar(self, event=None):         # memberikan perintah menutup aplikasi         self.parent.destroy()



  if__name__ =='__main__':     root =Tk()     aplikasi =ProgramPembayaran(root, "Program Pembayaran")     root.mainloop()