Python Introduction
Secara singkat Python adalah bahasa pemrograman tingkat tinggi yang digunakan untuk pengembangan aplikasi desktop, web, game, dan pemrosesan data. Python didesain agar mudah dibaca dan ditulis, sehingga memungkinkan pengembang untuk menulis kode yang lebih efisien dan cepat. Python sangat populer di kalangan pengembang karena dukungan komunitas yang besar, tersedia banyak library dan framework untuk pengembangan aplikasi, serta mudah untuk dipelajari. Python juga mendukung berbagai platform sistem operasi, seperti Windows, Mac, dan Linux. untuk lebih detailnya silahkan baca bagian selanjutnya.
Materi Description:
Goals
- Pengenalan Python
Python
- Expression, Variabel, Function, Conditional
- String, List, Dictionary
- Loop, While
Apa itu python?
Dilansir dari laman resmi Python, Python adalah bahasa pemrograman interpretatif yang bisa dipasang pada berbagai platform, khususnya platform yang berfokus pada keterbacaan kode.
Ref : https://www.python.org/doc/essays/blurb/
Menurut wikipedia, Python adalah bahasa pemrograman tujuan umum yang ditafsirkan tingkat tinggi yang dibuat oleh Guido Van Rossum dan dirilis pertama kali tahun 1991.
Ref : https://id.wikipedia.org/wiki/Python_(bahasa_pemrograman)
Sederhananya Python adalah bahasa pemrograman multifungsi yang bisa digunakan untuk :
- Web development (server-side),
- Software development
- Matematics and data science
- Machine Learning
- System Scripting
- Internet of Things (IoT)
*untuk pengembangan di paltform android dan ios cukup lambat dijalankan
serta dapat dijalankan dalam berbagai platform seperti web, mobile, CLI, game, dll. selain itu yang menjadi ciri khas python adalah bahasanya yang sederhana dan mudah dimengerti dibanding bahasa pemrograman lainnya.

karena kemudahan bahasanya serta fungsionalitasnya yang beragam tidak heran jika bahasa ini masuk 5 besar dalam survei stackoverflow 2021 pada kategori most popular programing, scripting and markup

Ref : https://insights.stackoverflow.com/survey/2021#most-popular-technologies-language
Selain itu python mendukung gaya pemrograman
- Stucture
- Procedural
- OOP (Object Oriented Programing)
Sifat python
- Case sensitive
- Run program line by line
Mengapa python untuk AI (Artificial Intelligence) ?
- Memiliki dukungan komunitas yang besar
- Bahasa yang mudah dipahami
- Memiliki banyak library dan modul yang mendukung pengembangan AI
- Portability (dapat diaplikasikan di berbagai platform)
Tipe data pada python
- Numbers (int, float, complex)
- Strings
- Boolean
- Tuple
- Set
- List
- Dictionary
- Cek tipe data variabel :
print(type(var))
Numbers
- dibagi menjadi 3 yaitu
- Int : 10
- Float : 1.7
- Complex : 1+2j
| Integer | tidak dibatasi panjangya namun dibatasi oleh memory yang tersedia |
| Float | dibatasi panjangnya maks 15 desimal *be careful using float in penjumlahan 1.1+2.2 tidak sama dengan 3.3 tapi 3.3000…3 |
| Complex | karena python banyak digunakan oleh matematikawan, tipe bilangan di python juga mendukung bilangan imajiner dan bilangan kompleks. X + yJ, x adalah real number dan y adalah imajiner number |
Strings
- adalah karakter unicode yang dideklarasikan dengan petik tunggal ‘ atau ganda “ . Jika string > 1 baris dapat ditandai tigak petik tunggal ‘’’ atau ganda “”” . Contoh “aswin”
- *pada string Anda dapat mengambil huruf tertentu berdasarkan posisinya misal variabel[0]
Boolean
- merupakan turunan dari bilangan bulat integer yang hanya punya dua nilai konstanta : true dan false
List, Tuple, Set, Dictionary
- kumpulan data terurut. Serupa dengan array in another languange programing tapi tak sama. Bedanya elemen list tidak harus memiliki tipe data yang sama.
- ordered artinya posisi nilai dalam variabel berurut sehingga kita bisa mengambil nilai tertentu didalam variabel dengan slicing namun berbedahalnya dengan unordered kita tidak bisa melakukan slicing karena nilai nya tidak memeliki urutan posisi yg jelas atau tidak berurut,
| List | Changeable | Ordered list | [ ] | Bisa diubah |
| Tuple | Unchangeable | Ordered list | ( ) | Akses cepat |
| Set | Unchangeable | Unordered | { } | No duplicate |
| Dictionary | Unchangeable | Unordered | { } | No duplicate, key : value |
- List : [1,2, “aswin”]
- Tuple : (1,2, “aswin”)
- Set : {1,2, “aswin”}
- Dictionary : {“angka” : [1,2] , “nama” : “aswin”, key : value}
- print (List)
- print (Tuple)
- print (Set)
- print ( Dictionary[“nama”] ), print ( Dictionary[“angka”][0] )
Tipe data operation
Operasi pada list
- karena list isinya dapat berubah maka berikut operasi yang dapat dilakukan
- Slice
- List[0] menampilkan indeks ke 0
- List[:4] menampilkan indeks awal – indeks ke 4
- List[2:] menampilkan indek ke 2 – indeks akhir
- List[:] menampilkan indeks awal-akhir
- List.append( val ) : menambahkan isi list pada posisi terakhir
- List.extend( val ) : menggabungkan isi list
- perbedaan extend dan append terletak ketika menambahkan objek array, extend mengekstrak isinya lalu di input sedangkan append tidak
- List.insert( position, val ) : menambahkan isi pada posisi tertentu
- List.remove(val) : menghapus data tertentu dari list dengan
- List.clear() : menghapus semua data dari list dengan
- List.pop(posisition) : mengeluarkan data tertentu dari list dengan, data yang dikeluarkan dapat disimpan dan digunakan, jika tidak memasukkan val maka otomatis mengambil data terakhir
- List.index(val) : mengetahui posisi val pada list dengan
- List.sort() : mengurutkan val pada list dengan
- List.reverse() : mengurutkan val pad list dari belakang ke depan
- len(List) : menghitung panjang list
- min(List) or max(List) : mengetahui nilai min dan max
- List.count(val) : menghitung berapa kali suatu objek muncul in list
- List3 = List + List1 merge list (concatenate)
- List*2 menggandakan isi list sebanyak 2 kali
- *List adalah nama variabel Anda dapat menggantinya sesuai keinginan Anda namun tetap mematuhi syarat variabelName
ref : educba
Operation pada string
- len(var) : menghitung pangjang var string
- var[1:] : slice, menampilkan indeks ke 1 – indeks akhir
- var.index(‘w’) : mengetahui posisi huruf w pada var string
- var.upper() : mengubah var string menjadi huruf besar
- var.lower() : mengubah var string menjadi huruf kecil
- var.isupper() : return true jika var string huruf besar semua
- var.islower() : return tru jika var string huruf kecil semua
more string operation : w3schools
String Formating
String dapat kita gabungkan dengan variabel. Ada beberapa teknik formating yang digunakan yaitu,
Formatting + (only str to str)
| “halo namaku” + varName |
Formatting %
- kekurangan sulit dibaca dan jika ingin menggunakan variabel yang sama kita harus menuliskannya lagi
| “halo, namaku %s umurku %s . \n %s umur %s” % (varName, varAge, varName, varAge) |
Formatting str
- hampir sama dengan formatting sebelumnya namun kita tidak perlu menulis ulang variabelnya jika ingin dipakai kembali sehingga lebih mudah dibaca variabel yang digunakan dibanding formating sebelumya
- namun tetap memiliki kekurangan jika variabelnya banyak
| “halo, namaku {nama} umur {umur} .\n {nama} umur {umur}”.format(nama = varName, umur = varAge) |
Formatting f-string
- default format yang sering dipakai
- lansung mengambil dari variabel
- memperbaiki kekurangan formating sebelumnya
- bisa langsung dipakai operasi
| f”Halo,” namaku {varName} umur {varThnNow-varThnLahir} “ |
Statement & Expression

- statement adalah unit sintaks pada bahasa pemrograman yang menyatakan aksi atau tugas yang dilakukan
- expression adalah unit sintaks pada bahasa pemrograman yang meghasilkan nilai
- var x = 1 -> statement untuk membuat variabel x
- print(“hello world”) -> statement untuk menampilkan teks
- x + 1 -> expression menjumlahkan x dan 1
- sqrt(25) -> expression untuk menghitung akar kuadrat
- var x = 4 + 2 -> expression dan statement
Aritmatika Statement
| operator | Singkatan |
| X + 1 | X += 1 |
| X – 1 | X -= 1 |
| X * 1 | X *= 1 |
| X / 1 | X /= 1 |
| X % 1 | X %= 1 |
- x % n
- jika x habis dibagi (%) n maka akan menghasilkan 0 jika tidak menghasil 1
Perbandingan Statement
| == | Sama dengan |
| != | Tidak sama dengan |
| < | Kurang dari |
| <= | Kurang dari atau sama |
| > | Lebih besar dari |
| >= | Lebih besar atau sama dengan |
Percabangan/conditional statement
| If | if true : Do something if true : do something |
| else | if true : Do something else : do something else |
| Elif (else if) (nested) | if true1 : Do something1 elif true2 : Do something2 Elif ….. …… Else : Do something else |
- *true dapat diganti dengan conditional experession yang Anda mau
- *do something dapat diganti dengan statement, experssion, function, etc.
Perulangan/Looping statement
| for | varArray = [1,2,3] For i in varArray : Do something *loop for array processing *countable loop |
| while | While (true) : Do something *uncountable loop |
| Nested | Perulangan bertingkat Loop statement .. Loop statement … …. |
Perulangan for
| for variabel in iterable : pernyataan 1 pernyataan 2 dst… |
iterabale dapat diisi dengan variabel, list dan range
- range(nilai_awal, nilai_akhir, pencacah/selisih)
- range(nilai_awal, nilai_akhir)
- range(nilai_akhir)
- perlu diingat nilai akhir menggunakan operator ‘<‘ bukan operator ‘<=’. sehingga jika anda ingin menggunakan sampai nilai akhir maka nilai akhir haru dilebihkan 1 misal dengan nilai_akhir+1.
- kode end=’ ‘ digunakan untuk tampilan hasilnya secara horizontal kalau tidak maka akan tampil secara vertikal.
| for in in range (1, 10, 2) : print(i, end=’ ‘) output: 1,3,5,7,9 |
Kontrol perulangan
| break | Loop statement.. … Percabangan statement : break *men-stop looping ketika terjadi kondisi tertentu |
| continue | Loop statement.. …. Percabangan statement : continue *mengabaikan looping saat ini ketika terjadi kondisi yang diharapkan kemudian melanjutkan looping selanjutnya |
| Else after for | For item in items : If cari (item): Ditemukan( ) break Else : Tidak_ditemukan() |
Ref : https://www.dqlab.id/belajar-python-simple-bagi-pemula-dengan-looping#:~:text=Perbedaannya%20adalah%20perulangan%20for%20biasanya,tidak%20tentu%20berapa%20banyak%20perulangannya
Function & Lambda
- function : kumpulan perintah or baris kode yang dikelompokkan menjadi satu kesatuan untuk kemudian bisa dipanggil atau diguakan berkali-kali
- lambda : sama dengan function namun penulisannya inline dan khusus untuk penggunaan yg sederhana
| Def showNama(paramsName) : Print (“halo namaku”, paramsName) showNama(“aswin”) varX = lambda paramsName : Print (“halo namaku”, paramsName) varX(“aswin”) |
IDE (Intergrated Development Environment) yang dapat digunakan
- colaboratory : colab.research.google.com
- anaconda/jupiter notebook : https://www.anaconda.com/products/distribution
Training : Pelatihan Pro DTS – Tensorflow for machine learning
Codelab : https://github.com/42win/PROA_ML_TensorFlow/tree/main/CodeLab
