8 Program Python Sederhana - Auftechnique
Ide proyek program python sederhana · Menebak Angka · Gunting batu kertas · Pemblokir situs web · Algoritma pencarian bilangan biner · Program python sederhana untuk ...
bahasa pemrograman Python
Program python sederhana. Dunia menuju pada zaman AI, ML, dan Data science yang merupakan teknologi dominan pada saat ini. Seluruh teknologi yang disebutkan itu bergantung pada <anchor>bahasa pemrograman Python</anchor> dalam beberapa hal. Oleh sebab itu, menjadi master pada pemrograman Python akan membuka kesempatan dalam berkarir dan mendapatkan banyak peluang terbaik di seluruh planet ini.
15 Dasar simple bahasa pemrograman Python | Belajar Python
Untuk Video Tutorial

Silahkan berkunjung ke youtube channnel di bawah ini:



# 15 Dasar simple bahasa pemrograman Python

98
/ 100

Dasar-dasar bahasa pemrograman Python meliputi banyak hal, sama seperti bahasa pemrograman lain, yaitu adanya syntax tertentu untuk mendeklarasikan variable, tipe data, operator dan lainnya. Perbedaan yang fundamental adalah hanya pada penulisannya saja. Oleh karena itu kali ini kita akan menelurisi satu persatu, terutama untuk bahasa pemrograman Python.

## Pendahuluan bahasa pemrograman python

catatan: tutorial ini menggunakan Jupyter notebook. Jika Anda ingin menggunakan IDE yang sama, Anda harus menginstallnya terlebih dahulu (install menggunakan Anaconda akan lebih mudah).

Table Of Contents

Selain itu Anda dapat mendownload file interaktif jupyter notebook untuk tutorial ini pada bab kesimpulan secara gratis.

Jika Anda tipe pembelajar visual dan auditory, maka Anda dapat langsung menonton ini:

[Bahasa Pemrograman Python] Mencoba program pertama
Jika Anda lebih menyukai menonton langsung pada platform youtube. Maka Anda dapat klik disini untuk playlist detail dan dapat subscribe untuk mendapatkan notifikasi update terbaru konten tutorial pada channel Auftechnique.

bahasa pemrograman pythonPython

## Indentasi

Perbedaan bahasa pemrograman Python dibandingkan bahasa yang lain seperti Java, JavaScript dan C++ adalah indentasi. Mengapa demikian? Jawabnya sederhana, yaitu agar mudah di baca, dapat dibandingkan jika kita membaca Java, kebanyakan programmer pemula akan mengalami kesulitan untuk memahami koding yang di tulis oleh bahasa tersebut jika disandingkan dengan bahasa pemrograman Python.

Indentasi pada bahasa pemrograman Python adalah hal yang wajib. jika kita tidak mematuhi aturan tersebut, maka akan memberikan pesan error seperti di bawah ini:

Pada bahasa pemrograman Python, notifikasi pesan Error pun sangat mudah di baca. Bagi anda yang pada mulanya menggunakan bahasa lain, lalu beralih menggunakan Python. Mungkin awalnya Anda akan merasa risih, namun pada akhirnya Anda akan menyadari bahwa indentasi ini sangat menyenangkan mata programmer, terlebih jika kode program tersebut di tulis oleh orang lain. Hal tersebut akan mempermudah jika kita bekerja di dalam tim yang besar, sehingga akan cepat memahami intensi dari kode program tersebut.

## Variable

Sesuai dengan namanya, variable adalah sesuatu yang dapat berubah. Variabel ini digunakan untuk merujuk menuju lokasi memori oleh program komputer.

Pada sebagian besar bahasa lain, Anda perlu menetapkan tipe data terhadap suatu variabel. Namun, hal itu tidak perlu dilakukan pada bahasa pemrograman python. Sebagai contoh, jika Anda menulis program dengan menggunakan bahasa C, maka sintaks yang harus anda tulis adalah `int num = 39;` Dengan Python Anda hanya cukup menuliskan `num = 39`.

Untuk memeriksanya, Anda dapat membuka Jupyter notebook atau Python Shell, lalu lakukan langkah demi langkah perintah di bawah ini:

#### Integer

Integer adalah angka numerik yang dapat berupa nilai positif, negatif, atau nol tanpa memiliki angka desimal

Seperti yang telah kita lihat di atas, kita telah mendeklarasikan variabel `num` dan menetapkan angka 39 sebagai nilai variabel tersebut. Metode `type` yang sudah built-in pada bahasa pemrograman python dapat digunakan untuk memeriksa jenis suatu variabel.

Ketika kita memeriksa jenis variable `num` dengan menggunakan metode `type`, maka kita akan melihat output   `&lt;class 'int'&gt;`.

#### Float

Float adalah angka numerik sama seperti integer , namun ada sedikit perbedaan, yaitu adanya angka desimal

Dapat di lihat pada contoh tersebut bahwa kita telah menggunakan angka desimal pada `num`. Lalu, ketika kita memeriksanya pada bahasa pemrograman Python akan menunjukkan bahwa tipe data tersebut adalah `float`.

#### String

String adalah kumpulan beberapa karakter atau integer. String tersebut direpresentasikan dengan menggunakan tanda quotes (double ataupun single).

Pada contoh di atas kita telah menetapkan string pada variable `test`. Jenis variable `test` ini adalah seperti yang terlihat pada output Python, yaitu string.

#### Boolean

Boolean adalah operator biner yang hanya memiliki dua nilai output yaitu `True ` atau `False`.

Di sini kita telah menetapkan nilai False kepada variable `anda_robot`. Jenis variabel ini adalah boolean. Kita hanya dapat menetapkan True atau False. Perlu di ingat bahwa T dan F harus berupa huruf kapital atau kita akan mendapatkan pesan error code ini:

#### NoneType

NoneType digunakan ketika variable tidak memiliki nilai, seperti pada contoh di bawah ini:

## Operator

Operator adalah simbol aritmatika pada bahasa pemrograman Python atau bahasa lainnya, untuk melihat seluruh operator yang tersedia pada Python Anda dapat melihat table di bawah ini.

Bahasa pemrograman Python tabel operatorTabel Python operator

Mari kita membahas satu per satu operator pada bahasa pemrograman python

#### Operator aritmatika

Operator yang akan kita bahas adalah penambahan, pengurangan, perkalian, eksponensial, modulus, dan pembagian. Mari kita lihat operasi aritmatika sederhana pada bahasa pemrograman Python.

Pertama-tama kita akan mendeklarasikan dua variabel a dan b.

Untuk lebih jelasnya, dapat kita lihat pada contoh di bawah ini:

Contoh untuk menguji operator aritmatika lainnya:

#### Operator pembanding

Contoh operator pembanding adalah sama dengan, lebih besar dari, serta kurang dari.

#### Operator logika

Operator ini "tidak termasuk", "dan", "dan atau"

## Conditional Statement

Conditional statement digunakan untuk memeriksa suatu kondisi yang ditentukan sebelumnya apakah nilai nya True atau False.

Sering kali ketika kita sedang mengembangkan suatu aplikasi, ada hal di mana kita perlu memeriksa suatu kondisi tertentu lalu melakukan perintah yang berbeda tergantung pada hasil sebelumnya. Dalam skenario seperti itu conditional statement akan sangat berguna. `if`, `elif ` dan `else ` adalah pernyataan kondisional yang digunakan dalam bahasa pemrograman Python.

Dengan conditional statement, kita dapat membandingkan suatu variable dan memeriksanya apakah variable tersebut memiliki nilai atau merupakan suatu boolean, dan selanjutnya memeriksa apakah True atau False. Oleh karena itu, mari kita praktekan penggunaannya.

Kondisi pertama. Kita memiliki suatu integer dan tiga kondisi. Yang pertama adalah kondisi `if` untuk mengecek apakah nomor tersebut sama dengan 10. Yang kedua adalah kondisi `elif`. Disini kita akan memeriksa apakah nomor tersebut kurang dari 10. Yang terakhir adalah kondisi `else`. Kondisi ini akan tereksekusi jika kedua kondisi sebelumnya tidak memenuhi syarat.

Output:

Catatan: Tidak wajib untuk menggunakan dua kondisi sama-dengan di dalam kondisi `if`. Anda dapat melakukannya dengan `elif`.

Kondisi kedua. Pada kasus ini kita akan memiliki variabel boolean dan dua kondisi. Pada contoh sebelumnya ketika kita membahas mengenai boolean apakah benar atau salah? Saat ini kita akan menggunakannya kembali pada conditional statement.

Jika `anda_robot`, lalu print "Ya, saya robot", selain itu print "bukan, saya manusia".

Output:

Kondisi ketiga. Pada contoh ini kita akan membuat kondisi berkebalikan dari kondisi kedua dengan operator `not`.

Output

Kondisi ke empat. Disini kita akan mendeklarasikan data sebagai None, lalu memeriksanya jika data tersebut ada atau tidak.

Kondisi kelima. Anda pun dapat menggunakan `if` dalam satu baris pada bahasa pemrograman Python. Syntax nya akan terlihat seperti pada:

Output:

Kondisi ke enam. Anda pun dapat menggunakan `if` `else` dalam satu baris, seperti pada contoh di bawah ini:

Output:

Kondisi ketujuh. Anda pun dapat menggunakan nested if-else statement, yaitu:

Kondisi kedelapan. Anda dapat pula mengunakan operator `and` pada conditional statement. Operator ini menyatakan jika kondisi 1 dan 2 keduanya adalah benar.

Output:

10

Karena 10 adalah angka di antara 5 dan 15.

Kondisi kesembilan. Anda pun dapat menggunakan operator `or` dalam pernyataan bersyarat. Hal ini untuk menyatakan bahwa jika salah satu kondisi 1 atau kondisi 2 benar, sehingga program akan di eksekusi.

Output:

10

Apakah Anda bingung karena output `num ` adalah 10, padahal pada statement kedua adalah kurang dari 7? Hal ini disebabkan oleh kondisi `or`. Sehingga, jika salah satu kondisi terpenuhi, maka program akan tetap berjalan.

## For loops

Metode lain yang berguna dalam bahasa pemrograman Python adalah iterator. Hal ini sangat membantu jika Anda ingin melakukan sesuatu beberapa kali.

Dapat dibayangkan jika kita ingin menulis kata "Hai" sebanyak seribu kali, tentu kode program kita akan sangat sulit untuk di baca, selain itu, kemungkinan terjadinya kesalahan sangat lah besar. Oleh karena itu, kita dapat menggunakan suatu cara yang disebut `loop ` atau `iterator`. Ada dua cara untuk menjalankan perintah tersebut, yaitu dengan `for ` atau `while ` loop.

Pada contoh kali ini, kita akan menggunakan metode `range`. Metode ini yang menentukan rentang `loop ` seberapa banyak perintah harus di ulang. Secara default, titik awalnya adalah 0.

Output:

Contoh lainnya jika kita ingin membuat rentang yang berbeda, maka kita dapat menggunakan `range(1,3)`.

Output

"Hai" hanya tercetak dua kali karena kita telah menentukan rentang dari angka 1 hingga 3. Sederhananya kita dapat mengurangi angka sebelah kanan dengan sebelah kiri.

Kita pun dapat menambahkan perintah lain setelah loop selesai, seperti pada contoh di bawah ini:

Output

Dapat kita lihat bahwa loop telah melakukan iterasi sebanyak 3 kali ( 3 - 0 ). Setelah iterasi selesai, tahap selanjutnya adalah mengeksekusi statement `else`.

Selain itu kita pun dapat melakukan nesting `for ` loop di dalam `for ` loop yang lain.

Output:

Dapat kita lihat bersama bahwa statement "loop di dalam" tereksekusi dua kali. Setelah itu "loop di luar" di eksekusi satu kali. Lalu, "loop di dalam" di eksekusi lagi sebanyak dua kali.

Jika Anda masih bingung, semoga pernyataan ini dapat membantu:

- Python interpreter melihat ada perintah `for` loop pada bagian awal. Selanjutnya membaca ke bagian bawah dan menemukan keberadaan `for ` loop yang lain.
- Sehingga, Python akan mengesekusi "loop di dalam" sebanyak dua kali. Setelah selesai yang pertama, interpreter masih harus melakukannya dua kali lagi dari sisa "loop di luar" yang harus dilakukan.
- Selanjutnya Interpreter melakukan tugas mulai lagi dari awal dan melihat `for `"loop di dalam" dan di ulangi terus hingga "loop di luar" selesai.

Kita pun dapat memilih untuk melewati `for ` loop pada kondisi tertentu. Maksudnya adalah setiap kali proses looping dijalankan, hingga intrepreter melihat statement `pass`, sehingga membuatnya tidak mengesekusi baris tersebut dan akan melanjutkan pada baris setelahnya (jika ada).

Anda tidak akan melihat output di sini, karena setelah `pass` tidak ada lagi baris kode program.

## While loops

Dalam bahasa pemrograman Python, terdapat metode loop atau iterator yang lain, yaitu `while ` loop. Kita pun dapat memberikan hasil yang sama seperti yang telah kita lakukan pada `for ` loop dengan menggunakan `while ` loop, seperti contoh di bawah ini:

Output

Perlu diperhatikan bahwa, setiap kali kita menggunakan perintah `while ` loop. Kita harus menambahkan statement increment atau statement yang dapat menghentikan loop pada titik tertentu. Jika kita tidak menggunakannya, maka proses loop akan berjalan selama nya.

Cara lain untuk menghentikan loop adalah dengan menambahkan statement `break ` di dalam `while ` loop. Perintah ini akan menghentikan loop seperti pada contoh di bawah ini.

Output

Di sini kita menghentikan `while ` loop ketika intrepreter membaca nilai dari `i` , yaitu 4 (lebih dari 3).

Contoh lainnya adalah dengan menambahkan statement `else ` di dalam while loop. Statement ini akan di eksekusi setelah `while ` loop selesai.

Output:

Selanjutnya adalah statement `continue`. Statement ini dapat digunakan untuk melewati proses eksekusi yang sedang berjalan dan melanjutkan pada baris setelahnya.

Output:

## User input

Bayangkanlah kita membuat suatu aplikasi seperti command-line. Dimana aplikasi ini harus dapat mengambil input dari pengguna dan melakukan sesuai apa yang di perintah. Untuk melakukan hal tersebut, kita dapat menggunakan metode input yang sudah terintegrasikan pada bahasa pemrograman Python.

Memasukkan input

Syntax agar user dapat melakukan input adalah:

Contoh:

Output:

Input nama

Ketika kita menggunakan metode `input`, lalu mengesekusinya, kita akan di minta untuk memasukkan text pada textbox, lalu tekan Enter. Setelah itu kita dapat memeriksa kembali apakah variable nama yang kita masukkan sudah sesuai atau belum.

Print nama

Berdasarkan hasil di atas, maka variable yang kita masukkan adalah benar. Jika Anda mengeceknya, `Zacky ` ini adalah type data string.

Mari kita coba satu contoh lagi, dimana kita akan meng-assign nilai `integer ` sebagai input.

bahasa pemrograman python input caseTanggal

Apakah Anda sedikit bingung karena `integer ` dikenali oleh bahasa pemrograman python sebagai `string`. Ini bukan kesalahan pada Python, melainkan memang seharusnya memberikan output seperti itu jiga menggunakan metode `input`. Untuk menangani kasus seperti ini, maka kita akan mengkonversi `string ` kepada `integer ` dengan metode `typecasting`.

## Typecasting

Kita telah melihat bahwa, metode input akan menghasilkan output berupa `string`, termasuk `integer`. Sekarang, jika kita ingin mengubah output tersebut kepada integer, hal yang harus kita lakukan adalah:

string ke integer

Disini kita telah mendeklarasikan User input dan mengkonversikannya ke dalam bentuk integer menggunakan metode `input` pada bahasa pemrograman python . Inilah yang disebut dengan nama `typecasting`.

Sederhananya, kita dapat melakukan konversi dengan bantuan typecasting untuk semua jenis variable:

- integer ke string: str()
- string ke integer: int()
- integer ke float: float()

catatan: Konversi dari `integer ` ke ` string` pun dapat dilakukan.

## Dictionary

Bagian ini pada artikel bahasa pemrograman python, kita akan membahas `Dictionary`. Kita dapat membayangkannya untuk menyimpan user detail, seperti halnya kamus yang dapat menyimpan berbagai macam kata-kata. Python pun dapat melakukan hal serupa dengan cara seperti di bawah ini:

Untuk melihat hasilnya, kita dapat menggunakan perintah print.

Sebagai seorang programmer, cara tersebut tidaklah elegan. Untuk membuatnya lebih baik, mari kita menyimpan data tersebut di dalam key-value dictionary.



Dictionary adalah kumpulan variable yang tidak berurutan dan dapat di ubah(dapat di perbaharui).

Format dictionary pada bahasa pemrograman python adalah sebagai berikut:

Untuk memahaminya lebih jauh, maka kita dapat melihat contoh pada penggunaannya.

#### Mengakses nilai pada dictionary

Untuk dapat mengakses nilai di dalam dictionary ada dua cara yang dapat kita lakukan. Kita akan melihat kedua cara tersebut, sehingga dapat menentukan mana yang lebih baik.

Untuk mengakses nilai pada key `nama ` dari `info_detail` di dalam dictionary pada bahasa pemrograman python adalah seperti pada gambar di bawah ini:



Kita dapat melihat bahwa cara pertama lebih mudah untuk dipahami. Namun, masalah akan timbul ketika kita hendak mengakses data yang tidak ada di dalam dictionary, seperti pada contoh di bawah ini:

Dari pesan error di atas terindikasi bahwa tidak ada `key ` yang bernama `umur`. Sekarang, mari kita coba skenario yang sama dengan menggunakan metode kedua.

Kita tidak mendapatkan response apapun dari Python console setelah kita hit run. Mari kita mencoba debugging lebih jauh lagi untuk mengetahui mengapa hal ini dapat terjadi. Namun sebelumnya, kita akan menetapkan variable `umur ` untuk memanggil metode `get`, lalu lakukan perintah print.

Output

Berdasarkan contoh di atas, ketika perintah `get` tidak menemukan nilai `key `,maka akan menghasilkan variable bernilai `None`. Hal ini yang menyebabkan kita tidak mendapatkan pesan error. Anda mungkin bertanya-tanya, manakah metode yang lebih baik.

Sebagian besar programmer biasanya menggunakan metode kedua karena lebih masuk akal. Namun, untuk beberapa kondisi di mana pengecekan kode program yang lebih ketat, maka kita perlu menggunakan metode pertama.

#### Memeriksa keberadaan `key`.

Kita mungkin bertanya-tanya, bagaimana cara kita ingin mengetahui apakah suatu dictionary memiliki `key ` tertentu atau tidak. Pada bahasa pemrograman python, metode `key()` dapat menyelesaikan masalah ini.

Output:

Bagaimana jika kita ingin memeriksa apakah suatu dictionary itu memiliki suatu nilai atau tidak? Untuk mengetahuinya, mari kita mendeklarasikan dictionary kosong seperti di bawah ini:

Kita dapat menggunakan if-else pada dictionary secara langsung untuk melakukan pengecekan, jika memberikan hasil `true ` maka terdapat data di dalam dictionary tersebut, sebaliknya `false ` jika tidak memiliki data.



Pada bahasa pemrograman python, metode `bool ` pun dapat di gunakan untuk pengecekan apakah suatu dictionary memiliki nilai atau tidak. Perlu di ingat bahwa boolean akan memberikan hasil `False ` jika dictionary tidak memiliki nilai dan `True ` jika memiliki nilai.



#### Update `key ` yang memiliki nilai.

Pada bagian ini kita akan mencoba untuk mengubah nilai yang sudah ada di dalam dictionary. Misalkan kita sudah memiliki dictionary seperti di bawah ini:

Misalkan kita ingin mengubah status profesi yang ada di dalam dictionary, maka syntax untuk melakukannya ialah:

Mengubah nilai `key ` pada dictionary adalah sama dengan cara memberikan nilai pada variabel.

#### Menambahkan pasangan `key-value`

Dapat kita lihat bahwa `key ` yang baru kita masukan ke dalam dictionary adalah `umur ` yang memiliki `value ` 120.

#### Menghapus pasangan `key-value`.

Untuk menghapus pasangan `key-value` pada bahasa pemrograman python adalah dengan metode `pop`.

Dapat di lihat bahwa `key-value` `umur ` telah hilang dari dictionary.

#### Meng-copy dictionary

Dictionary tidak dapat di copy dengan menggunakan cara konvensional. Kita tidak dapat meng-copy nilai `dictA ` ke `dictB ` seperti contoh di bawah ini:

Cara di atas akan memberikan pesan error. Cara yang tepat untuk copy value adalah dengan menggunakan metode `copy`.

## Lists

List adalah struktur data pada bahasa pemrograman Python yang mutable (dapat di ubah) dan memiliki element berurutan secara sekuensial. Setiap elemen di dalam list disebut dengan item. Untuk mendefinisikan suatu list pada bahasa pemrograman Python adalah dengan menggunakan tanda kurung siku [ ]. Contohnya adalah:

List sangat membantu ketika kita bekerja dengan banyak nilai yang saling berhubungan. List memungkinkan kita untuk menyimpan data secara bersamaan dan melakukan metode yang sama untuk melakukan suatu operasi pemrograman terhadap nilai yang banyak dengan sekali perintah.

#### Mengakses element di dalam list

Mengakses element di dalam list adalah dengan cara memperhatikan urutannya yang di mulai dari angka nol untuk anggota list pertama.

Contoh syntax untuk akses list urutan ketiga:

Selain mengakses list pada posisi tertentu, anda pun dapat menggunakan rentang anggota list, contoh nya:

Angka `0` di dalam kurung siku menandakan dari mana kita memulai (dalam hal ini di mulai dari urutan pertama), sedangkan angka kedua `2` adalah posisi nilai sebelum urutan tersebut (sebelum urutan ketiga).

#### Menambahkan item ke dalam list

Pada bahasa pemrograman python, untuk menambahkan anggota ke dalam list adalah dengan menggunakan metode `append`.

#### Mengubah nilai item di dalam list

Pada contoh di bawah ini, kita akan mengubah item ke-empat yaitu False, menjadi True.

#### Menghapus item dari dalam list

Untuk menghapus item di dalam list pada bahasa pemrograman python adalah dengan menggunakan metode `remove`.

#### Looping pada list

Kita pun dapat memerintahkan fungsi loop di dalam list dengan cara:

#### Memeriksa keberadaan list

Untuk memeriksa keberadaan anggota di dalam list adalah dengan cara di bawah ini:

Kita dapat melihat bahwa angka 8 tidak termasuk di dalam list, sehingga akan kembali pada kondisi `else`, yaitu `tidak`.

#### Meng-copy list

Untuk meng-copy list dari satu kepada yang lainnya adalah dengan menggunakan metode `copy`.

#### Memeriksa panjang list

Pada bahasa pemrograman Python, untuk memeriksa panjang list adalah dengan menggunakan metode `len`.

#### Menggabungkan dua list

Untuk menggabungkan dua list, kita dapat menggunakan operator `+`.

Apa yang terjadi jika kita mencoba untuk mengakses elemen yang tidak terdapat di dalam list?

Pada kode program di atas, kita hendak mencoba untuk mengakses element kelima `[4]`. Seperti yang telah kita ekspektasikan, bahwa kode tersebut akan memberikan pesan error, karena kita hanya memiliki empat elemen di dalam list tersebut.

## Tuples

Pada bagian sebelumnya, list bekerja sangat baik untuk menyimpan koleksi data dan yang di ubah (mutable). Namun, terkadang kita ingin membuat list yang tidak dapat di ubah isinya. Tuple dapat melakukannya untuk kita, dengan kata lain tuple adalah list yang immutable(data tidak dapat di ubah).

#### Mengakses elemen tuple

Seperti hal nya untuk mengakses element pada list, tupple pun dapat di akses dengan menggunakan syntax yang sama.

Mengakses rentang index pun memiliki cara yang sama dengan list:

#### Mengubah nilai element pada tuple

Mungkin Anda bertanya-tanya. Lho, bukannya tuple tidak dapat di ubah? Anda tidak perlu khawatir jika melakukan kesalahan input pada tuple. Ada trik yang dapat kita lakukan yaitu dengan cara mengkonversi tuple menjadi list, lalu dikonversikan kembali ke dalam bentuk tuple. Contohnya:

Catatan: Sekali tuple di buat, elemen baru tidak dapat ditambahkan.

## Sets

Sets adalah salah satu tipe data yang lain pada bahasa pemrograman Python. Sets merupakan data tidak berurutan dan tidak memiliki indeks, dinyatakan seperti pada contoh berikut ini:

#### Mengakses elemen di dalam sets

Oleh karena `sets ` tidak memiliki indeks, maka, kita tidak dapat mengaksesnya secara langsung. Oleh karena itu, untuk mengakses elemen tersebut perlu menggunakan fungsi loop.

Catatan: sekali sets di buat, nilanya tidak dapat di ubah.

#### Menambahkan item pada sets

Pada bahasa pemrograman python, untuk menambahkan elemen pada suatu sets adalah dengan cara menggunakan metode `add`.

#### Memeriksa panjang dan menghapus item pada

## Functions

Ketika kita ingin melakukan tugas tertentu pada program yang kita kembangkan. Kita pun dapat menggunakan `function` pada kode suatu program. Terlebih lagi jika kita ingin melakukan suatu perintah berulang kali di dalam program dan tidak ingin untuk menggunakan kode yang sama berkali-kali. Dengan menggunakan `function ` ini, hidup programmer menjadi lebih mudah.

Untuk mendeklarasikan `function ` pada bahasa pemrograman python adalah dengan menggunakan kata kunci `def`, contoh nya adalah:

Pada contoh di atas, kita telah mendeklarasikan function `hello_world`, yang ketika di panggil akan mencetak tulisan "Hello world, kami dari Indonesia". Untuk memanggil function tersebut, kita harus menggunakan syntax seperti pada contoh di bawah ini:

Perlu di ingat bahwa tanda kurung `()` harus disertakan untuk mengeksekusi `function` pada bahasa pemrograman python. Jika kita lupa menyertakannya, maka, akan terlihat seperti pada contoh bawah ini:

Mari kita melihat contoh sederhana kegunaan function ketika hendak melakukan operasi aritmatika penambahan. Cara konvensional untuk melakukan operasi tersebut yaitu:

Sekarang, jika kita ingin mengganti nilai variabel a dan b untuk melakukan operasi penambahan yang sama, kita harus melakukannya lagi seperti pada cara diatas.

Dapat dibayangkan jika hanya untuk menggunakan operasi penambahan tersebut dan dilakukan sebanyak puluhan kali, kita harus selalu menyesuaikan nilai a dan b. Cara tersebut sangatlah tidak efisien. Namun, kita tidak perlu khawatir, karena masalah tersebut dapat diselesaikan dengan menggunakan function seperti pada contoh selanjutnya.

Function di atas adalah untuk operasi aritmatika penjumlahan variable a dan b. Untuk memanggil function tersebut, kita dapat menggunakan syntax di bawah ini:

Dapat kita lihat bahwa dengan menggunakan function untuk mengeksekusi suatu perintah adalah sangat mudah. Sekarang, bagaimana jika kita tidak memasukkan argumen di dalam tanda kurung function `penambahan` tersebut?

Python akan memberikan pesan TypeError dan menginformasikan kepada kita untuk menggunakan dua argument. Lalu, bagaimana jika kita memasukkan argument ketiga?

Seperti yang terlihat pada pesan error di atas, kita telah memanggil 3 argument, namun pada function penambahan yang telah kita tulis seharusnya hanya memiliki 2 argumen.

Lalu, bagaimana jika kita tidak mengetahui berapa banyak argument yang terdapat pada suatu function? Untuk menjawab masalah tersebut kita dapat menggunakan `args ` dan `kwargs ` pada bahasa pemrograman python.

## Args

Kita dapat menggunakan `args ` dan `kwargs `(di bahas pada bab selanjutnya) jika tidak mengetahui ada berapa banyak argumen yang terdapat pada suatu function.

Untuk meneruskan sejumlah n argument kepada suatu function, kita dapat menggunakan args. Untuk mendefinisikan `args`, maka kita harus menambahkan tanda `*` di depan argumen.

Ingat! Ketika kita menambahkan tanda ` *` di depan, kita akan menerima argument dalam bentuk tuple.

`*num` pada kasus di atas adalah contoh dari args. Sekarang kita dapat memanggil kembali fungsi `add ` dan melewati beberapa argumen sehingga tidak akan mendapatkan pesan TypeError.



Sehingga, untuk melakukan operasi penjumlahan, kita dapat secara langsung menggunakan metode yang sudah build-in pada bahasa pemrograman Python, yaitu `sum`.

Sekarang kita dapat memanggil function penambahan dan kita akan melihat output yang benar seperti pada dua contoh di bawah ini.

#### Keyword Arguments

Terkadang, kita tidak mengetahui urutan dari suatu argumen yang akan diteruskan ketika function di panggil. Pada kasus seperti ini, kita dapat menggunakan ` keyword arguments` yang dapat diteruskan tanpa harus mengingat urutannya. Namun, function tersebut akan mengetahui nilai yang benar. Lihatlah contoh di bawah ini:



Hasil pemanggilan function dan argument di atas adalah tepat. Namun, bagaimana jika kita memanggil function tersebut seperti ini:

Hasil di atas adalah tidak benar. Yang terjadi pada kasus ini adalah variable `nama ` mengambil kata "tukang kayu" dan variable `profesi ` memasukkan kata "Zacky". Untuk scenario yang kita tidak ketahui urutan argumentnya, maka cara untuk memanggil keyword argument pada bahasa pemrograman python adalah:

#### Default Arguments

Pada kondisi di mana kita tidak yakin apakah suatu argumen memiliki suatu nilai atau tidak ketika function di panggil. Kita dapat menggunakan metode lain, yaitu `default argument` seperti pada contoh di bawah ini.

Di sini kita menyisipkan variable bernilai None pada `argument ` profesi. Sehingga, jika kita tidak memanggil argument kedua, ketika memanggil function tersebut. Maka, argument kedua akan mengambil nilai `None ` sebagai default. Sebagai contoh, mari kita panggil function `info_detail`.

Jika kita memasukkan nilai pada argument kedua, maka nilai `None ` akan berubah dan menjadi nilai argument kedua.

Namun, jika kita menentukan suatu nilai pada argument pertama sebagai default. Lalu, menjadikan argumen kedua sebagai non-default. Maka, Python akan memberikan pesan error seperti di bawah ini:

Ingat! Urutan untuk menentukan parameter suatu argumen di dalam function adalah:

1. Posisi parameter atau non-default, contoh (a, b, profesi)
2. keyword parameter atau default parameter, contoh (a="abc", nama=None)

## Kwargs

Untuk kondisi di mana kita tidak mengetahui ada berapa banyak keyword argumen yang akan diteruskan kepada function. Maka, kita akan menggunakan `kwargs`. Penggunaan kwarg adalah dengan menempatkan tanda `**` di depan argumen.

Ingat! Ketika kita menempatkan tanda `**` di depan argumen. Maka, kita akan menerima argument dalam bentuk dictionary.

Mari kita mencoba untuk memahaminya dengan contoh yang konkrit. Kita akan mendekalarasikan function yang dapat menerima `nama ` sebagai argument dengan menggunakan tanda `**` di depannya.

Ketika kita memanggil `user ` function, maka kita akan menerima data dalam bentuk dictionary. Mari kita lihat contoh di bawah ini:

Sekilas seperti tidak memiliki perbedaan dengan `args`. Namun, ini bukan lah args. Pada `args`, kita tidak dapat mengakses nilai tertentu berdasarkan namanya karena `args ` berbentuk `tuple`. Sedangkan pada `kwargs`, kita mendapatkan data dalam bentuk `dictionary` sehingga nilainya dapat di akses.

Mari kita lihat contoh di bawah ini:

Lalu, panggil function tersebut:

Terlihat bahwa dengan menggunakan `kwargs ` kita dapat menampilkan nilai dari `nama`, yaitu Zacky.

## Kesimpulan

Kita telah menelurusi dasar-dasar bahasa pemrograman Python yang cukup intensif. Semoga dapat membantu Anda dalam memahami bahasa pemrograman Python dengan mudah. Saya menyediakan notebook materi ini dalam bentuk file jupyter notebook dengan klik tombol di bawah ini:

Jika Anda ingin menggunakan bahasa Python pada proyek yang sebenarnya, seperti pada implementasi Internet of Things, maka Anda dapat mengikuti tutorial ini. Atau pada implementasi pada Artificial Intellegent klik di sini

Terima kasih telah membaca artikel ini, semoga bermanfaat untuk anda.

## Artikel Rekomendasi:

## Referensi:

### Share this:

### Related

Saya seorang Engineer dan Tech Entrepreneur. Memiliki ketertarikan dalam bidang Internet of Things, data acquisition, data analytics dan visualization, machine learning, software testing, serta web design dan development.

Silahkan telusuri blog ini dengan senang hati :).

## Terbaru



Copyright since @ 2020

linkedinfacebookpinterestyoutubersstwitterinstagramfacebook-blankrss-blanklinkedin-blankpinterestyoutubetwitterinstagram