Sejarah dan Penggunaan Python
Sejarah dan Penggunaan Python
Disusun Oleh
KARAWANG
2019
Kata Pengantar
Dengan menyebut Tuhan Yang Maha Esa, Saya ucapkan puji syukur atas kehadirat-Nya
yang telah melimpahkan rahmat, hidayah, inayah dan taufik-Nya kepada Saya, sehingga Saya
dapat menyelesaikan Laporan Penelitian untuk Projek UAS Organisasi dan Arsitektur
Komputer dengan judul ‘Bahasa Pemrograman: Python’.
Laporan penelitian ini berisi . Selain itu, dalam laporan penelitian ini banyak terdapat
pengetahuan yang dapat memberikan wawasan lebih bagi para pembaca.
Saya mengucapkan terimakasih kepada semua pihak yang telah berperan aktif maupun
pasif dalam pembuatan laporan penelitian ini dari awal sampai akhir. Khususnya kepada
dosen Organisasi dan Arsitektur Komputer, Bapak Apriade Voutama, M. Kom, yang
membimbing Saya dalam pembuatan laporan penelitian ini hingga selesai.
Saya menyadari laporan penelitian ini masih jauh dari kata sempurna. Maka dari itu, Saya
meminta kritik dan saran kepada pembaca agar Saya dapat memperbaiki laporan penelitian
ini menjadi lebih baik lagi.
Penyusun
2
Daftar Isi
3
Bab I
Pendahuluan
1
Diunduh dari https://id.wikipedia.org/wiki/Daftar_bahasa_pemrograman pada 15 Desember 2019 pukul
12:45 WIB
2
Diunduh dari https://qwords.com/blog/bahasa-pemrograman-terpopuler/ pada 15 Desember 2019 pukul
12:51 WIB
3
Diunduh dari https://edube.org/learn/programming-essentials-in-python/python-a-tool-not-a-reptile pada
15 Desember 2019 pukul 13:03 WIB
4
1.3.3 Mengetahui isi dari Bahasa Python.
5
BAB II
Landasan Teori
2.1 Sejarah Python
Python diciptakan oleh Guido van Rossum pertama kali di Centrum Wiskunde
& Informatica (CWI) di Belanda pada awal tahun 1990-an. Bahasa python terinspirasi
dari bahasa pemrograman ABC. Sampai sekarang, Guido masih menjadi penulis
utama untuk python, meskipun bersifat open source sehingga ribuan orang juga
berkontribusi dalam mengembangkannya.
Di tahun 1995, Guido melanjutkan pembuatan python di Corporation for
National Research Initiative (CNRI) di Virginia Amerika, di mana dia merilis
beberapa versi dari python.
Pada Mei 2000, Guido dan tim Python pindah ke BeOpen.com dan
membentuk tim BeOpen PythonLabs. Di bulan Oktober pada tahun yang sama, tim
python pindah ke Digital Creation (sekarang menjadi Perusahaan Zope). Pada tahun
2001, dibentuklah Organisasi Python yaitu Python Software Foundation (PSF). PSF
merupakan organisasi nirlaba yang dibuat khusus untuk semua hal yang berkaitan
dengan hak intelektual Python. Perusahaan Zope menjadi anggota sponsor dari PSF.
Semua versi python yang dirilis bersifat open source. Dalam sejarahnya,
hampir semua rilis python menggunakan lisensi GFL-compatible. Berikut adalah versi
mayor dan minor python berikut tanggal rilisnya.
a. Python 1.0 – Januari 1994
Python 1.2 – 10 April 1995
Python 1.3 – 12 Oktober 1995
Python 1.4 – 25 Oktober 1996
Python 1.5 – 31 Desember 1997
Python 1.6 – 5 September 2000
b. Python 2.0 – 16 Oktober 2000
Python 2.1 – 17 April 2001
Python 2.2 – 21 Desember 2001
Python 2.3 – 29 Juli 2003
Python 2.4 – 30 Nopember 2004
Python 2.5 – 19 September 2006
Python 2.6 – 1 Oktober 2008
Python 2.7 – 3 Juli 2010
c. Python 3.0 – 3 Desember 2008
Python 3.1 – 27 Juni 2009
Python 3.2 – 20 Februari 2011
Python 3.3 – 29 September 2012
Python 3.4 – 16 Maret 2014
Python 3.5 – 13 September 2015
Python 3.6 – 23 Desember 2016
Python 3.7 – 27 Juni 2018
6
Nama python sendiri tidak berasal dari nama ular yang kita kenal. Guido
adalah penggemar grup komedi Inggris bernama Monty Python. Ia kemudian
menamai bahasa ciptaannya dengan nama Python.4
a. Bahasa yang mudah dan intuitif sama kuatnya dengan yang dimiliki
pesaing utama.
b. Open source, sehingga siapapun dapat berkontribusi untuk pengembangan
Bahasa Python ini.
c. Kode yang mudah dimengerti oleh semua orang seperti Bahasa pada
umumnya.
d. Cocok untuk tugas sehari-hari dan memungkinkan dilakukannya
pengembangan dalam waktu yang singkat.5
Memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan modul-
modul 'siap pakai' untuk berbagai keperluan.
Memiliki tata bahasa yang jernih dan mudah dipelajari.
Memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan
kembali dan penulisan ulang kode sumber.
Berorientasi objek.
Memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
Modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-
modul tersebut dapat dibangun dengan bahasa Python maupun C/C++.
Memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa
pemrograman Java, python memiliki fasilitas pengaturan penggunaan ingatan
komputer sehingga para pemrogram tidak perlu melakukan pengaturan ingatan
komputer secara langsung.
Memiliki banyak faslitas pendukung sehingga mudah dalam pengoperasiannya. 7
4
Diunduh https://www.pythonindo.com/sejarah-python/ pada 15 Desember 2019 pukul 15.32 WIB
5
Diunduh https://edube.org/learn/programming-essentials-in-python/python-a-tool-not-a-reptile-why-python
pada 15 Desember 2019 pukul 15:38 WIB
6
Diunduh https://www.pythonindo.com/siapa-saja-pengguna-python/ pada 15 Desember 2019 pukul 15.52
WIB
7
Diunduh https://id.wikipedia.org/wiki/Python_(bahasa_pemrograman) pada 15 Desember 2019 pukul 15.58
WIB
7
2.2 Cara Instalasi Python
Dan juga kita dapat menjalankannya melalui IDLE. Kita dapat mencarinya
melalui tools search. Berikut adalah tampilan IDLE Python Shell.
8
Diunduh https://edube.org/learn/programming-essentials-in-python/begin-your-python-journey pada 15
Desember 2019 pukul 16.40 WIB
8
2.2.3 Pengguna macOS
Untuk pengguna mac, kita perlu mendownload python terlebih dahulu.
File yang kita pilih untuk mendownload adalah dengan ekstensi nama berkas
yaitu .pkg dari laman https://www.python.org/downloads.
2.3 Sintaks Dasar Python
a. Menuliskan dalam beberapa baris
Untuk menuliskan statement yang terdiri dari beberapa baris dapat
dilakukan dengan cara memberikan backslash(\) pada akhir kalimat. Sehingga
menghasilkan sebagai berikut.
c. Komentar
Untuk membuat komentar kita dapat menambahkan hastag(#) di awal
kalimat. Seperti berikut ini.
9
Diunduh https://www.pythonindo.com/sintaks-dasar-python/ pada 15 Desember 2019 pukul 17.27WIB
9
Kita dapat memanggil variable tersebut dengan hanya menuliskan nama
variable yang sudah kita deklarasikan. Istilah menugaskan, menyimpan, dan
memberi nilai ke variabel adalah sama. Secara teknis, sebenarnya variabel adalah
nama yang diberikan untuk menunjuk ke lokasi memori yang menyimpan suatu
objek atau data.10
Dalam hal pemberian nilai pada variable dapat dilakukan kepada lebih dari
satu variable. Misalnya,
Dalam Bahasa python, bila terdapat dua atau lebih nilai dalam variable yang
sama maka python akan menggunakan nilai yang terakhir dari variable yang
dideklarasikan. Misalnya berikut ini.
10
Diunduh https://www.pythonindo.com/variabel-dan-tipe-data-python/ pada 15 Desember 2019 pukul
17.52 WIB
10
b. String
String adalah tipe data yang anggotanya berurut dan memiliki indeks. Indeks
dimulai dari angka 0 bila dimulai dari depan dan -1 bila diindeks dari belakang.
Tiap karakter bisa diakses menggunakan indeksnya dengan format
nama_string[indeks]. Pada string juga bisa dilakukan slicing atau mengakses
sekelompok substring dengan format nama_string[awal:akhir]. Untuk jelasnya
bisa diperhatikan contoh berikut.
c. List
List adalah tipe data yang berisi item yang berurut. Seperti halnya tipe
data string, tiap item (anggota) list memiliki indeks sesuai dengan urutannya.
Indeks dimulai dari 0 dan bukan dari 1.
List bisa berisi anggota dengan tipe yang sama maupun berbeda. Untuk
mendeklarasikan list, digunakan tanda kurung […] dan masing-masing
anggotanya dipisahkan oleh tanda koma.
Untuk mengakses item dari list caranya adalah dengan memanggil nama
list diikuti indeks dari item yang bersangkutan, yaitu dengan format
nama_list[index]. Selain itu bisa juga dilakukan pengaksesan terhadap sejumlah
item dari indeks ke indeks. Hal ini disebut slicing. Contohnya sebagai berikut:
11
d. Tuple
Tuple adalah jenis data lain yang mirip dengan list. Perbedaannya dengan
list adalah anggotanya tidak bisa diubah (immutable). List bersifat mutable,
sedangkan tuple bersifat immutable. Sekali tuple dibuat, maka isinya tidak bisa
dimodifikasi lagi.
Tuple dideklarasikan dengan menggunakan tanda kurung (…) dan
anggotanya dipisahkan oleh tanda koma. Misalnya tuple komposisi warna untuk
putih adalah (255,255,255). Seperti halnya list, kita bisa mengakses anggota
tuple dengan menggunakan indeksnya.
Tuple berguna untuk data yang dimaksudkan tidak diubah isinya. Maka,
bila kita coba untuk mengubah isinya, akan terjadi error.
Namun, bila kita mengubah keseluruhan data, bukan satu-satu, maka data
dapat berubah.
e. Set
Set adalah salah satu tipe data di Python yang tidak berurut (unordered). Set
memiliki anggota yang unik (tidak ada duplikasi). Jadi misalnya kalau kita
meletakkan dua anggota yang sama di dalam set, maka otomatis set akan
menghilangkan yang salah satunya.
Set bisa digunakan untuk melakukan operasi himpunan matematika seperti
gabungan, irisan, selisih, dan komplemen. Set dibuat dengan meletakkan
anggota-anggotanya di dalam tanda kurung kurawal {…}, dipisahkan
menggunakan tanda koma. Kita juga bisa membuat set dari list dengan
memasukkan list ke dalam fungsi set()
Set bisa berisi data campuran, baik integer, float, string, dan lain
sebagainya. Akan tetapi set tidak bisa berisi list, set, dan dictionary.
12
f. Dictionary
Dictionary adalah tipe data yang tiap anggotanya terdiri dari pasangan
kunci-nilai (key-value). Mirip dengan kamus dimana ada kata ada arti.
Dictionary umumnya dipakai untuk data yang besar dan untuk mengakses
anggota data secara acak. Anggota dictionary tidak memiliki indeks.
Dictionary dideklarasikan dengan menggunakan tanda kurung kurawal
{…}, dimana anggotanya memiliki bentuk kunci:nilai atau key:value dan tiap
anggota dipisah tanda koma. Kunci dan nilainya bisa memiliki tipe sembarang.
Untuk mengakses nilai dari anggota dictionary, kita menggunakan key-nya.
Tipe data sering disebut objek. Pada dasarnya semua hal di python adalah
objek. Ada tipe data lain yang umumnya dimiliki oleh bahasa Python, yaitu tipe
None. Tipe None adalah sebuah tipe data spesial yang menunjukkan bahwa
nilai/data suatu variabel itu belum/tidak ada (bukan nol, tapi tidak ada). Pada
bahasa pemrograman lain seperti C, atau PHP, tipe data ini disebut null. Tipe
data string, tuple, dan list masuk ke dalam tipe data yang disebut tipe data
berurut / ordered atau sekuensial / sequence. Tipe data dictionary disebut data
tidak berurut / unordered.
13
Contohnya adalah sebagai berikut.
Operator Perbandingan
Operator perbandingan adalah operator yang digunakan untuk
membandingkan 2 buah nilai. Hasil perbandingannya adalah True atau False
tergantung kondisi.
14
Contohnya adalah sebagai berikut.
Operator Penugasan
Operator penugasan adalah operator yang digunakan untuk memberi nilai
ke variabel. Misalkan, a = 7 adalah contoh operator penugasan yang memberi
nilai 7 di kanan ke variabel a yang ada di kiri.
Operator Logika
Operator logika adalah operator yang digunakan untuk melakukan operasi
logika.
15
Operator Bitwise
Operator bitwise adalah operator yang melakukan operasi bit terhadap
operand. Operator ini beroperasi bit per bit sesuai dengan namanya. Sebagai
misalnya, angka 2 dalam bit ditulis 10 dalam notasi biner dan angka 7 ditulis
111.
Pada tabel di bawah ini, misalkan x = 10 (0000 1010) dalam biner dan y = 4
(00000100) dalam biner.
Operator Identitas
Operator identitas adalah operator yang memeriksa apakah dua buah nilai
(variabel) berada pada lokasi memori yang sama.
Operator Keanggotaan
Operator keanggotaan adalah operator yang digunakan untuk memeriksa
apakah suatu nilai atau variabel merupakan anggota atau ditemukan di dalam
suatu data (string, list, tuple, set, dan dictionary).11
11
Diunduh https://www.pythonindo.com/operator-python/ pada 15 Desember 2019 pukul 19:43 WIB
16
2.6 Input dan Output
Python menyediakan banyak fungsi built-in yang bisa kita pergunakan. Salah
satunya adalah yang berkenaan dengan fungsi input-output. Fungsi bawaan untuk
melakukan operasi output adalah print(), dan fungsi untuk melakukan operasi input
adalah fungsi input().
Semua yang diinputkan akan berubah menjadi string. Sehingga, bila ingin
menghasilkan tipe data lainnya kita perlu mengubah tipe data tersebut. Contohnya
seperti berikut ini.
Pada awalnya, nilai a = 2. 2 di sini memiliki tipe data yaitu string. Sehingga bila
ingin hasil input-annya memiliki tipe data integer, maka perlu ditambahkan ‘int’
sebelum tulisan input. Yang nantinya akan merubah tipe data yang seharusnya string
menjadi integer.
If … else
17
Digunakan untuk menguji dua kondisi. Kondisi pertama jika
pernyataan benar dan kondisi kedua jika pernyataan salah. Memiliki
sintaks sebagai berikut.
If … elif … else
Pernyataan if…elif…else digunakan untuk menguji lebih dari 2
kondisi. Bila kondisi pada if benar, maka pernyataan di dalamnya
yang dieksekusi. Bila salah, maka masuk ke pengujian kondisi elif.
Terakhir bila tidak ada if atau elif yang benar, maka yang dijalankan
adalah yang di blok else. Memiliki sintaks sebagai berikut.
b. Perulangan
Secara umum, Python mengeksekusi program baris perbaris. Mulai dari
baris satu, dua, dan seterusnya. Ada kalanya, kita perlu mengeksekusi satu baris
atau satu blok kode program beberapa kali. Hal ini disebut dengan perulangan
atau biasa disebut looping atau iterasi.
Dalam python, perulangan terdapat dua macam yaitu
For
Perulangan terjadi sampai looping mencapai elemen atau anggota
terakhir dari sequence. Bila loop sudah sampai ke elemen terakhir dari
18
sequence, maka program akan keluar dari looping. Contoh sintaksnya
sebagai berikut.
While
Perulangan menggunakan while akan menjalankan blok pernyataan
terus menerus selama kondisi bernilai benar. Iterasi akan terus berlanjut
selama kondisi benar. Bila kondisi salah, maka program akan keluar dari
while dan lanjut ke baris pernyataan di luar while. Berikut ini adalah sintaks
dari perulangan while.
19
Di sini, blok pernyataan print('The count is:', count), dijalankan terus
selama count masih lebih kecil dari 5. Count ditambah 1 setiap kali iterasi.
Pada saat nilai count mencapai 5, maka kondisi menjadi False dan program
keluar dari looping while.
Sebuah kondisi dimana loop selalu benar dan tidak pernah salah disebut loop
tidak terbatas (infinite loop). Terkadang hal ini menjadi masalah. Tapi sering juga
infinite loop berguna, misalnya untuk program client/server dimana server perlu
menjaga komunikasi tetap hidup dan tidak terputus. Pada contoh program while di
atas, bila kita lupa menuliskan kode count = count + 1, maka akan jadi infinite loop.
Keadaan ini hanya dapat dihentikan dengan menekan ctrl + c. Bila kita tidak
menekannya, maka looping while akan terus berlanjut hingga tak terbatas.
Looping umumnya akan berhenti bila kondisi sudah bernilai salah. Akan
tetapi, seringkali kita perlu keluar dari looping di tengah jalan tergantung keperluan.
Hal ini bisa kita lakukan dengan menggunakan kata kunci break dan continue.
Statement break memaksa program keluar dari blok looping di tengah jalan.
Sedangkan statement continue menyebabkan program langsung melanjut ke step /
interval berikutnya dan mengabaikan (skip) baris kode di bawahnya (yang satu
blok). Contohnya adalah sebagai berikut.
20
Bila pada program di atas kita ganti kode break menjadi continue, maka
hasilnya akan jadi seperti berikut.
While-else
Python mendukung penggunaan else sebagai pasangan dari while. Blok pernyataan
else hanya akan dieksekusi bila kondisi while bernilai salah. Contohnya sebagai
berikut.
2.8 Fungsi
12
Diunduh https://www.pythonindo.com/perulangan/ pada 15 Desember 2019 pukul 21:03 WIB
21
definisikan sekali saja, dan kemudian bisa digunakan berulang kali dari tempat lain
di dalam program.
a. Kata kunci def diikuti oleh function_name (nama fungsi), tanda kurung
dan tanda titik dua (:) menandai header (kepala) fungsi.
b. Parameter / argumen adalah input dari luar yang akan diproses di dalam
tubuh fungsi.
c. "function_docstring" bersifat opsional, yaitu sebagai string yang digunakan
untuk dokumentasi atau penjelasan fungsi dan berfungsi sebagai
dokumentasi atau keterangan singkat tentang fungsi yang kita buat. Cara
mengaksesnya adalah dengan menggunakan sintaks nama_fungsi.__doc__.
Contohnya sebagai berikut.
Contohnya adalah
13
Diunduh https://www.pythonindo.com/fungsi/ pada 16 Desember 2019 pukul 07.01 WIB
22
Untuk memanggil fungsi yang telah dideklarasikan sebelumnya, kita hanya
perlu menuliskan nama fungsi yang sudah dideklarasikan lalu mengisi parameter
yang telah disediakan.
2.9 Modul
Modul adalah sebuah file yang berisi kode pemrograman python. Sebuah file
yang berisi kode python, misalnya: example.py, disebut modul dan nama modulnya
adalah example.
Modul digunakan untuk memecah sebuah program besar menjadi file-file
yang lebih kecil agar lebih mudah dimanage dan diorganisir. Modul membuat kode
bersifat reusable, artinya satu modul bisa dipakai berulang dimana saja diperlukan.14
Langkah untuk membuat dan menggunakan modul sebagai berikut.
a. Buatlah program python yang kita inginkan. Biasanya program yang
digunakan untuk membuat program python adalah dengan menggunakan
fungsi.
Modul yang kita importkan dapat dilakkukan dengan berbagai cara yaitu
dengan menggunakan sintaks berikut ini.
14
Diunduh https://www.pythonindo.com/modul/ pada 16 Desember 2019 pukul 07.55 WIB
23
Kita dapat mengubah nama modul dengan menggunakan as sebagai alias.
Ataupun bila ingin hanya mengimport beberapa variable saja maka kita dapat
menggunakan from nama_modul import variabel_yang_diinginkan.
b. Membaca File
Untuk membaca sebuah file kita dapat menggunakan fungsi read(n), fungsi
ini digunakan untuk membaca n karakter.
c. Menulis File
Untuk menulis ke dalam file, kita menggunakan mode 'w' pada saat
membuka filenya. Mode ‘w’ maksudnya adalah membuka file untuk ditulis,
membuat file baru jika file belum tersedia atau menimpa isi file jika file sudah
ada. Atau bisa juga menggunakan mode 'a', mode ‘a’ yaitu membuka file dan
15
Diunduh https://www.pythonindo.com/operasi-file/ pada 16 Desember 2019 pukul 08:40 WIB
24
menambahkan karakter di ujung file lama (tanpa menghapus isinya), membuat
file baru bila file belum tersedia untuk menambah isi file dari akhir file awal,
tanpa menghapus atau menimpa isinya terlebih dahulu.
Kita harus berhati-hati dalam menggunakan mode 'w' karena bisa menimpa
file jika filenya sudah ada. Semua data di file yang tertimpa akan terhapus dan
diganti dengan isi baru.
Kita bisa menulis file dengan menggunakan metode write(). Metode ini
mengambalikan jumlah karakter yang dituliskan ke dalam file.
d. Menutup File
Untuk menutup file kita dapat menggunakan close(). Namun, cara yang lebih
baik adalah dengan menggunakan sintaks berikut ini.
25
Bab III
Penutup
3.1 Kesimpulan
Bahasa python merupakan Bahasa pemrograman yang mudah dipahami. Hal ini
dikarenakan python memiliki Bahasa yang hampir mirip dengan Bahasa manusia
sehingga mudah dipahami oleh semua orang. Walaupun Bahasa python ini mudah
dipahami, tidak berarti Bahasa ini terbelakang dan tidak bagus. Kenyataannya, python
telah dipakai oleh banyak perusahaan besar, contohnya seperti Google Inc. Bahkan
dalam salah satu aplikasi buatan google yaitu Youtube sebagian besar menggunakan
python sebagai Bahasa pemrogramannya.
Python ini merupakan aplikasi open source sehingga perkembangan yang terjadi di
dalamnya cukup cepat. Banyak orang menggunakan python untuk menyelesaikan
masalah dalam kehidupannya. Python pun memiliki tujuan pembuatannya menurut
Guido van Rossum yaitu Bahasa yang mudah dan intuitif sama kuatnya dengan yang
dimiliki pesaing utama, open source sehingga siapapun dapat berkontribusi untuk
pengembangan Bahasa Python ini, kode yang mudah dimengerti oleh semua orang
seperti Bahasa pada umumnya, cocok untuk tugas sehari-hari dan memungkinkan
dilakukannya pengembangan dalam waktu yang singkat.
3.2 Saran
Untuk para pembaca, diharapkan untuk membaca lebih banyak lagi di laman-laman
yang membahas mengenai python. Ini dikarenakan kekurangan penulis dalam menuliskan
Bahasa python ini. Diluaran sana ada yang membahas lebih dalam lagi mengenai python.
26
Daftar Pustaka
27