Kategori
Python

Operator dan Ekspresi

Hampir semua statemen (baris logika) yang Anda tulis akan mengandung ekspresi. Contoh sederhana dari ekspresi adalah 2+3. Sebuah ekspresi dapat diturunkan menjadi operator dan operand.

Operator adalah fungsi yang menjalankan sesuatu dan direpresentasikan oleh simbol, seperti + atau simbol-simbol lain secara khusus. Operator butuh data untuk bisa dioperasikan dan data ini disebut operand. Dalam kasus ini 2 dan 3 adalah operand.

Operator

Kita akan melihat operator secara singkat dan bagaimana penggunaannya:

Catat bahwa Anda dapat mengecek dan memperbaiki ekspresi yang diberikan di contoh ini dengan menggunakan interpreter secara interaktif. Sebagai contoh, untuk menguji ekspresi 2+3, gunakan prompt interpreter interaktif Python:

>>> 2 + 3
5
>>> 3 * 5
15
>>>

+ (tambah)

Menambahkan dua objek

3 + 5 menghasilkan 8'a' + 'b' menghasilkan 'ab'.

- (minus)

Mengurangi satu angka terhadap angka lainnya. Jika operand pertama tidak ada, diasumsikan nol.

-5.2 memberikan angka negatif dan 50 - 24 memberi hasil 26.

* (perkalian)

Menghasilkan perkalian dari dua angka atau mengembalikan string yang diulang beberapa kali.

2 * 3 menghasilkan 6'la' * 3 menghasilkan 'lalala'.

** (pangkat)

Menghasilkan x pangkat y

3 ** 4 memberikan 81 (dengan kata lain 3 * 3 * 3 * 3)

/ (pembagian)

Membagi x oleh y

4 / 3 menghasilkan 1.3333333333333333.

// (pembagi bulat ke bawah)

Mengembalikan hasil pembulatan ke bawah dari hasil pembagian

4 // 3 menghasilkan 1.

% (modulo)

Menghasilkan sisa dari pembagian

8 % 3 menghasilkan 2-25.5 % 2.25 menghasilkan 1.5.

<< (geser kiri)

Menggeser nomor bit ke sebelah kiri sesuai dengan jumlah bit yang telah ditentukan (setiap angka merupakan representasi bit di memori atau digit biner, yakni 0 dan 1)

2 << 2 menghasilkan 82 direpresentasikan 10 dalam bits.

Menggeser 2 bit kekiri akan menghasilkan 1000 yang merupakan representasi dari desimal 8.

>> (geser kanan)

Menggeser angka bit ke kanan sesuai dengan jumlah bit yang telah ditentukan.

11 >> 1 menghasilkan 5.

11 direpresentasikan oleh bit dengan 1011 kemudian digeser ke kanan 1 bit menghasilkan 101 yang merupakan desimal angka 5

& (bitwise AND)

Operasi bit-wise AND dari angka (bitwise adalah operasi angka berbasis bit yakni dengan 0 dan 1)

5 & 3 menghasilkan 1.

| (bitwise OR)

Operasi bitwise OR dari angka

5 | 3 menghasilkan 7

^ (bitwise XOR)

Operasi angka Bitwise XOR (OR ekslusif/exclusive or)

5 ^ 3 menghasilkan 6

~ (bitwise invert)

Membalikkan angka bitwise dari x atau -(x+1)

~5 menghasilkan -6.

< (kurang dari)

Menghasilkan pengembalian apakah x kurang dari y. Semua operator perbandingan hanya menghasilkan True atau False. Catat huruf besar yang ada di awal kata tersebut.

5 < 3 menghasilkan False dan 3 < 5 menghasilkan True.

Perbandingan dapat dirangkai secara bebas: 3 &lt; 5 &lt; 7 menghasilkan True.

> (lebih besar dari)

Menghasilkan pengembalian apakah x lebih besar daripada y

5 &gt; 3 menghasilkan True. Jika operand berupa angka, keduanya akan dikonversikan dalam tipe yang sejenis. Selain itu, selalu mengembalikan nilai False

<= (lebih kecil atau sama dengan)

Menghasilkan pengembalian apakah x lebih kecil atau sama dengan y

x = 3; y = 6; x &lt;= y menghasilkan True.

>= (lebih besar atau sama dengan)

Menghasilkan pengembalian apakah x lebih besar atau sama dengan y

x = 4; y = 3; x &gt;= 3 menghasilkan True.

== (sama dengan)

Membandingkan apakah kedua objek sama atau tidak

x = 2; y = 2; x == y menghasilkan True.

x = 'str'; y = 'stR'; x == y menghasilkan False.

x = 'str'; y = 'str'; x == y menghasilkan True.

!= (tidak sama dengan)

Membandingkan apakah kedua objek berbeda atau tidak

x = 2; y = 3; x != y menghasilkan True.

not (boolean NOT)

Jika x True, akan menghasilkan False. Jika x False, menghasilkan True.

x = True; not x menghasilkan False.and (boolean AND)

x dan y menghasilkan False Jika x False, selain itu akan menghasilkan pengembalian evaluasi nilai y

x = False; y = True; x and y menghasilkan False mengingat x False. Dalam kasus ini, Python tidak akan mengevaluasi y mengingat nilai dari ekspresi and adalah False yang menunjukkan bahwa seluruh ekspresi akan bernilai False dengan mengabaikan nilai apapun yang ada setelahnya. Ini disebut evaluasi sirkuit-pendek.or (boolean OR)

Jika x True, akan mengembalikan True, selain itu akan mengembalikan nilai y

x = True; y = False; x or y mengembalikan True. Evaluasi sirkuit pendek juga berlaku di sini.

Jalan pintas untuk operasi matematika dan penugasan

Menjalankan operasi matematika di variable lalu menugaskan hasilnya kembali kepada variabel cukup umum dilakukan di Python. Berikut adalah jalan pintas untuk menjalankan ekspresi tersebut.

Anda dapat menulis:

a = 2
a = a * 3

dengan cara:

a = 2
a *= 3

Perhatikan bahwa operasi ekxpresi var = var menjadi var operasi = ekspresi.

Urutan Evaluasi

Jika Anda memiliki ekspresi seperti 2 + 3 * 4, yang dilakukan penambahan dulu atau perkalian dulu? Dulu guru matematika di sekolah kita mengatakan bahwa perkalian harus dilakukan lebih dulu. Ini berarti operasi perkalian memiliki tingkat yang lebih tinggi daripada operasi penambahan.

Tabel berikut memberikan urutan untuk Python, dari urutan paling rendah (ikatan terendah) ke urutan tertinggi (ikatan tertinggi). Ini berarti bahwa dalam setiap ekspresi yang diberikan, Python akan mengevaluasi operator dan ekspresi di tabel yang lebih rendah sebelum menjalankan operasi di tabel yang lebih tinggi.

Tabel berikut diambil dari manual referensi Python, diberikan hanya untuk kelengkapan saja. Lebih disarankan sebetulnya untuk menggunakan tanda kurung untuk mengelompokkan operasi dan operand secara benar, dan secara eksplit menentukan urutan. Ini membuat program dapat lebih dibaca. Lihat Mengubah Urutan Evaluasi di bawah untuk lebih lengkapnya.lambda

Ekspresi lambdaor

Boolean ORand

Boolean ANDnot x

Boolean NOTin, not in

Tes keanggotaan variabelis, is not

Tes identitas variabel<, <=, >, >=, !=, ==

Perbandingan|

Bitwise OR^

Bitwise XOR&

Bitwise AND<<, >>

Menggeser+, -

Penambahan dan Pengurangan*, /, //, %

Perkalian, Pembagian, Pembagian pembulatan kebawah dan sisa (modulo)+x, -x

Positif, Negatif~x

Bitwise NOT**

Eksponensial/Pangkatx.attribute

Referensi terhadap atributx[index]

Pendaftaranx[index1:index2]

Pemotonganf(argumen ...)

Pemanggilan fungsi(ekspresi, ...)

Pengikatan atau penampilan dalam format tuple[ekspresi, ...]

Penampilan dalam format list{key:datum, ...}

Penampilan dalam format kamus (dictionary)

Simbol operasi yang belum dibahas akan dijelaskan nanti pada bagian berikutnya.

Simbol operasi yang memiliki bobot yang sama akan ditampilkan pada baris yang sama di tabel di atas. Sebagai contoh, + dan - memiliki bobot yang sama.

Mengubah Urutan Pelaksanaan Ekspresi

Untuk membuat ekspresi lebih mudah dibaca kita dapat menggunakan tanda dalam kurung. Sebagai contoh 2 + ( 3 * 4 ) jauh lebih mudah untuk dipahami daripada2 + 3 * 4yang membutuhkan pengetahuan urutan operator. Sebagaimana hal lainnya, tanda dalam kurung harus digunakan secara tepat (jangan berlebihan) dan jangan berulang seperti di(2 + (3 * 4)).

Ada keuntungan lain menggunakan tanda kurung – membantu penggantian urutan pelaksanaan. Sebagai contoh jika Anda ingin penambahan diproses dulu sebelum perkalian dalam satu ekspresi, Anda dapat menuliskannya dengan (2 +3) * 4.

Asosiatifitas

Operator biasanya diasosiasikan dari kiri kekanan. Ini berarti operator dengan urutan yang sama, akan dijalankan secara urut dari kiri ke kanan. Sebagai contoh, 2 + 3 + 4 akan dijalankan dengan urutan (2 + 3) + 4. Beberapa operator seperti operator sama-dengan (penugasan/assignment) memiliki asosiatifitas dari kanan ke kiri. Misalnya a = b = c diperlakukan a = (b = c).

Ekspresi

Contoh (simpan berkas berikut dengan nama expression.py):

panjang = 5
lebar = 2

area = panjang * lebar
print('Area seluas', area)
print('Perimeter seluas', 2 * (panjang + lebar))

Keluaran:

$ python3 expression.py
Area seluas 10
Perimeter seluas 14

Bagaimana Cara Kerjanya:

Panjang dan lebar dari sebuah persegi empat disimpan dalam variabel dengan nama sama. Kita gunakan ini untuk menghitung area dan perimeter persegi empat di mana variabelnya disimpan dengan nama yang sama. Kita simpan hasil dari ekspresi panjang * lebar ke dalam variabel bernama area, lalu mencetaknya di layar dengan perintah print. Dalam kasus kedua, kita secara langsung menggunakan nilai dari eksresi 2 * (panjang + lebar) dalam fungsi print.

Juga perhatikan bagaimana Python ‘mencetak-cantik’ keluarannya. Meskipun kita tidak menentikan spasi antara 'Area seluas' dengan variabel area, Python menampilkannya dalam keluaran yang manis dan bersih sehingga program dapat jauh lebih mudah dibaca dengan cara ini (mengingat kita tidak perlu khawatir tentang spasi dan string untuk menggunakan keluaran). Ini adalah salah satu contoh bagaimana Python membuat hidup programmer menjadi lebih mudah.

Ringkasan

Kita telah melihat bagaimana menggunakan operator, operan dan ekspresi – ini adalah kerangka dasar dari sebuah program. Berikutnya kita akan melihat bagaimana cara menggunakan hal ini ke dalam program lewat alur kontrol statemen.

Kategori
Python

Dasar Pemrograman Python

Hanya menampilkan ‘Hello World’ tentu saja tidak cukup bukan? Anda ingin melakukan sesuatu lebih dari itu – misalnya mengambil beberapa masukan, mengubah, memproses dan mengeluarkannya dalam bentuk tertentu. Kita dapat melakukan ini di Python dengan menggunakan konstanta dan variabel, dan kita betul-betul akan belajar konsep ini dalam bagian Dasar Pemrograman Python berikut.

Komentar

Komentar adalah teks apa saja yang ada setelah tanda # dan utamanya digunakan sebagai catatan untuk pembaca program.

Sebagai contoh:

print('Hello World') # Mohon dicatat bahwa print adalah fungsi 

atau:

# Mohon dicatat bahwa print adalah fungsi 
print('Hello World')

Gunakan komentar yang bermanfaat di dalam program sebanyak mungkin yang Anda bisa untuk:

  • menjelaskan asumsi
  • menjelaskan keputusan penting
  • menjelaskan detail yang penting
  • menjelaskan masalah yang coba Anda pecahkan
  • menjelaskan masalah yang Anda coba atasi di dalam program, dll.

Kode menunjukkan bagaimana, sedangkan komentar menunjukkan kepada Anda mengapa.

Hal ini bermanfaat bagi pembaca program Anda sehingga mereka dapat memahami dengan mudah apa yang sedang dikerjakan oleh program. Ingat, bahwa orang yang membaca tersebut bisa jadi Anda sendiri 6 bulan kemudian.

Konstanta Literal

Ini adalah konsep pertama yang perlu kita kenal dalam dasar pemrograman Python. Contoh konstanta literal adalah nomor seperti 51.23, atau string seperti 'Ini adalah string' atau "Ini, adalah string!". Disebut sebagai literal karena ia memang literal – Anda dapat menggunakan nilainya sebagaimana yang dituliskan (secara literal). Angka 2 selalu merepresentasikan dirinya sendiri, dan bukan hal lain – Ia merupakan konstanta karena nilainya tidak dapat diganti. Inilah kenapa semua ini disebut sebagai konstanta literal.

Nomor

Nomor biasanya digunakan dalam dua bentuk – integer dan float.

Contoh integer misalnya 2 di mana semuanya adalah angka.

Contoh dari angka floating point (atau sering disebut float) adalah 3.23 dan 52.3E-4. Notasi E mengindikasikan basis 10. Dalam hal ini, 52.3E4 merarti 52.3 * 10^-4^.Catatan untuk Programmer Berpengalaman

Tidak ada pembedaan untuk tipe long. Tipe int dapat digunakan sebagai integer dalam ukuran berapapun.

String

String adalah urutan karakter. String pada dasarnya adalah kumpulan huruf.

Anda akan menggunakan string di hampir setiap program Python yang Anda tulis, jadi perhatikan baik-baik bagian berikut ini.

Tanda Kutip

Anda dapat menetukan string dengan tanda kutip seperti 'Kutip saya di sini'. Setiap spasi kosong seperti spasi dan tab akan ditampilkan sebagaimana adanya.

Kutip Ganda

String dalam kutip ganda akan bekerja mirip seperti tanda kutip tunggal. Sebagai contoh "Siapa nama Anda?"

Kutip Tiga

Anda dapat menentukan string lebih dari satu baris dengan menggunakan kutip tiga – (""" atau '''). Anda dapat menggunakan tanda kutip dan kutip ganda secara bebas di dalam kutip tiga. Sebagai contoh:

'''Ini adalah string lebih dari satu baris. Ini adalah baris pertama.
Ini baris kedua.
"Siapa nama Anda?," Tanyaku.
Dia bilang "Bond, James Bond."
'''

String bersifat Abadi (Immutable)

Ini berarti sekali Anda membuat string, Anda tidak dapat mengubahnya. Meskipun ini terlihat jelek, tapi sebetulnya tidak. Kita akan memeriksa kenapa hal ini bukanlah batasan di beberapa program yang akan kita lihat kemudian.

Catatan untuk Programmer C/C++

Tidak ada pemisahan tipe data char di Python. Hal itu tidak diperlukan dan saya yakin Anda tidak akan merasa kehilangannya.

Catatan untuk Programmer Perl/PHP

Ingat bahwa string bertanda kutip tunggal maupun ganda, adalah sama – mereka tidak berbeda sama sekali.

dasar pemrograman python

Metode Format

Kadang kita ingin menyusun string dari informasi lain. Ini tempat di mana metode format() berguna.

Simpan baris berikut sebagai berkas bernama str_format.py:

usia = 20
nama = 'Swaroop'

print('{0} masih {1} tahun ketika dia menulis buku ini'.format(name, age))
print('Kenapa {0} bermain-main dengan python?'.format(name))

Keluaran:

$ python3 str_format.py
Swaroop masih 20 tahun ketika dia menulis buku ini
Kenapa Swaroop bermain-main dengan python?

Bagaimana Cara Kerjanya

String menggunakan ketentuan khusus, dan dapat diulang, metode format dapat dipanggil untuk menggantikan argumen yang ada di dalam format.

Coba perhatikan penggunaan pertama, di mana kita menggunakan {0} dan ini terkait dengan variabel nama yang merupakan argumen pertama dari metode format. Dan selanjutnya juga mirip, ketentuan berikutnya adalah {1} yang tersambung ke usia yang merupakan arguman kedua dari metode format. Mohon dicatat bahwa Python mulai penghitungan dari 0 yang berarti posisi pertama dalam indeks ini adalah 0, kedua adalah indeks 1 dan seterusnya.

Mohon dicatat bahwa kita dapat memperoleh hasil yang sama dengan penggabungan string (string concatenation): nama + ' berusia ' + str(usia) + ' tahun' tapi ini lebih jelek dan lebih banyak kemungkinan salah. Kedua, konversi ke string dapat dilakukan secara otomatis lewat metode formatdaripada konversi eksplisit ke dalam string yang dibutuhkan dalam kasus ini. Ketiga, kita dapat menggunakan metode format, kita dapat mengubah pesan tanpa harus berurusan bagaimana variable tersebut digunakan dan sebaliknya.

Juga catat bahwa nomor tersebut sifatnya pilihan, jadi Anda dapat menuliskannya dengan:

usia = 20
nama = 'Swaroop'

print('{} masih {} tahun ketika dia menulis buku ini'.format(name, age))
print('Kenapa {} bermain-main dengan python?'.format(name))

yang akan menghasilkan output yang sama persis dengan program sebelumnya.

Apa yang Python lakukan dalam metode format merupakan pengganti nilai tiap-tiap argumen yang diletakkan dalam bentuk dan aturan yang khusus. Aturan yang lebih detail misalnya:

 desimal (.) presisi 3 untuk float '0.333'
>>> '{0:.3}'.format(1/3)
 isi dengan garis bawah (_) dengan teks ditengah 
 (^) dengan panjang 11 '___halo___'
>>> '{0:_^11}'.format('halo')
 basis-kata kunci 'Swaroop menulis A Byte of Python'
>>> '{nama} menulis {buku}'.format(nama='Swaroop', buku='A Byte of Python')

Variabel

Penggunaan konstanta literal segera membuat kita bosan – kita ingin mencari cara bagaimana menyimpan informasi dan juga memanipulasinya. Segera sesuatu bernama variabel muncul dalam bayangan. Variabel persei seperti namanya – nilainya sangat beragam, dengan kata lain Anda dapat menyimpan apa saja dengan menggunakan variabel. Variabel seetulnya hanyalah merupakan bagian dari memori komputer tempat Anda menyimpan beberapa informasi. Tidak seperti konstanta literal, Anda perlu beberapa metode untuk mengakses nilai variabel ini, sehingga Anda perlu menamainya.

Nama Penunjuk Identitas

Variabiel adalah contoh penunjuk identitas. Penunjuk Identitas disematkan untuk suatu nama yang memberikan identitas terhadap sesuatu. Ada beberapa aturan yang harus diikuti untuk memberi nama identitas.

  • Karakter pertama dari identitas harus huruf (huruf besar ASCII atau huruf kecil ASCII atau karakter Unicode) atau garis bawah (’_’)
  • Karakter sisa dari nama penanda identtitas dapat terdiri dari huruf (huruf besar ASCII atau huruf kecil ASCII atau karakter Unicode), garis bawah (’_’) atau digit (0-9).
  • Penanda identitas bersifat case-sensitive (peka terhadap huruf besar dan kecil). Sebagai contoh, namaku dan Namaku tidak sama. Perhatikan huruf kecil n pada kata pertama dan huruf besar N pada kata kedua.
  • Contoh dari penanda identitas yang valid adalah i__nama_ku,nama_23. Contoh penanda identitas yang ‘’invalid’’ adalah 2hal,ini dengan spasi,nama-ku,>a1b2_c3 dan "ini_dalam_tanda_kutip".

Tipe Data

Variabel dapat menyimpan nilai dari jenis data yang berbeda-beda yang dinamakan tipe data. Tipe dasarnya adalah nomor dan string, yang kita sudah diskusikan sebelumnya. Di bab berikutnya, kita akan lihat bagaimana menciptakan tipe data kita sendiri dengan menggunakan classes.

Objek

Ingat, Python mereferensikan segala sesuatu yang digunakan di dalam program sebagai objek. Ini hanya dimaksudkan untuk perasaan umum saja. Alih-alih menyebut ‘sesuatu’ kita sebut ‘objek’.Catatan untuk pengguna Pemrograman Berorientasi Objek (Object Oriented Programming)

Python sangat kuat di dalam orientasi objek. Segala sesuatu adalah objek termasuk nomor, string dan fungsi.

Kita akan melihat bagaimana menggunakan variabel sejalan dengan konstanta literal. Simpan contoh berikut dan jalankan programnya.

Bagaimana menulis program Python

Menjalankan berkas Python dari baris perintah adalah salah satu yang dikuasai dalam dasar pemrograman Python. Cara yang baku untuk menyimpan dan menjalankan program Python adalah seperti ini:

  1. Buka editor pilihan Anda, seperti Komodo Edit.
  2. Ketik kode program seperti yang diberikan dalam contoh.
  3. Simpan sebagai berkas dengan nama seperti yang disebutkan.
  4. Jalankan interpreter dengan perintah python3 program.py untuk menjalankan program

Contoh Menggunakan Variabel dan Konstanta Literal.

Filename : var.py
i = 5
print(i)
i = i + 1
print(i)

s = '''Ini adalah string dengan baris lebih dari satu.
Ini baris kedua.'''
print(s)

Keluaran:

$ python3 var.py
5
6
Ini adalah string dengan baris lebih dari satu.
Ini baris kedua.

Bagaimana cara kerjanya

Berikut bagaimana program tersebut bekerja. Pertama, kita tentukan nilai konstanta literalnya 5 ke dalam variabel i lewat penentuan operator (=). Baris ini disebut statemen/pernyataan sebab menyatakan sesuatu yang harus dikerjakan. Didalam kasus ini, kita menghubungkan variabel bernama i dengan nilai 5. Kemudian kita menampilkan nilai i dengan fungsi print yang secara mengejutkan hanya menampilkan nilai variabel ke dalam layar.

Kemudian kita menambahkan 1 ke dalam nilai yang disimpan di dalam i dan menyimpannya lagi. Kemudian kita menampilkannya lagi, dan seperti yang sudah kita duga, kita mendapatkan nilai 6.

Berikutnya juga mirip, kita menentukan string literal ke dalam variabel s lalu menampilkannya.Catatan untuk programmer bahasa statik

Variabel digunakan hanya untuk memberikan nilai terhadapnya. Tidak perlu menggunakan deklarasi atau definisi tipe data.

Baris Logis dan Fisik

Baris fisik adalah apa yang Anda lihat saat Anda menulis program. Sedangkan baris logis adalah apa yang Python lihat sebagai suatu statemen tunggal. Python secara implisit mengasumsikan bahwa setiap baris fisik berhubungan dengan baris logis.

Sebagai contoh baris logis dalam statemen seperti print('Hello World') – jika ini berada dalam satu baris dirinya sendiri (sebagaimana yang Anda lihat di editor), maka ini juga berhubungan dengan baris fisik.

Secara implisit, Python mendorong penggunaan statemen tunggal per baris yang dapat membuat kode lebih terbaca.

Jika Anda ingin menentukan lebih dari satu baris logis dalam satu baris fisik, Anda harus secara spesifik menentukannya dalam titik koma (;) yang mengindikasikan akhir dari baris logis/statemen. Sebagai contoh,

i = 5
print(i)

secara efektif sama dengan

i = 5;
print(i);

dan sama juga jika ditulis dengan

i = 5; print(i);

bahkan sama juga dengan

i = 5; print(i)

Bagaimanapun juga, saya sangat menyarankan Anda tetap menulis hingga maksimum satu baris untuk satu logika tunggal dalam satu baris fisik. Idenya Anda tidak pernah menggunakan titik koma. Faktanya, saya tidak pernah atau melihat titik koma di program Python.

Ada satu kondisi di mana konsep ini sangat bermanfaat: jika Anda memiliki baris kode yang panjang, Anda dapat memecahnya ke dalam bberapa baris fisik dengan menggunakan garis miring terbalik (backslash). Ini direferensikan dengan nama penggabungan baris eksplisit:

s = 'Ini adalah string. \
Ini melanjutkan string.'
print(s)

Perintah tersebut akan menghasilkan keluaran:

Ini adalah string. Ini melanjutkan string.

Mirip dengan hal tersebut,

print\
(i)

sama dengan

print(i)

Kadang, muncul asumsi implisit yang tidak membutuhkan garis miring terbalik. Dalam kasus ini di mana baris logisnya dimulai dengan kurung kurawal, dimulai dengan kurung kotak atau dimulai dengan curly braces (~), tapi tidak diletakkan di akhir baris. Ini dinamakan penggabungan baris implisit*. Anda dapat melihat penerapan hal ini saat kita menulis program dengan menggunakan lists di bab berikutnya.

Indentasi

Spasi sangat penting di Python. Anda harus memahami ini saat belajar dasar pemrograman Python. Sebetulnya, spasi di awal baris sangat penting. Ini dinamakan indentasi. Setiap baris logika yang diawali dengan spasi kosong (baik spasi maupun tabs) digunakan untuk menentukan level indentasi dari baris logika, dan pada akhirnya digunakan untuk menentukan kelompok statemen.

Ini berarti bahwa statemen yang dijalankan secara bersamaan harus punya indentasi yang sama. Setiap set statemen/pernyataan dinamakan **blok*. Kita akan melihat contoh bagaimana pentingnya blok di bab berikutnya.

Satu hal yang perlu Anda ingat adalah indentasi yang salah akan menimbulkan pesan kesalahan. Sebagai contoh:

i = 5
 print('Nilainya adalah ', i) # Salah! Perhatikan spasi tunggal di awal baris.
print('Saya ulangi, nilainya adalah ', i)

Ketika Anda menjalankan ini, Anda akan mendapatkan pesan kesalahan:

  File "whitespace.py", line 4
    print('Nilainya adalah ', i) # Salah! Perhatikan spasi tunggal di awal baris.
    ^
IndentationError: unexpected indent

Perhatikan ada satu spasi kosong di awal baris kedua. Pesan kesalahan ini diindikasikan oleh Python, dengan mengatakan bahwa sintaks programnya tidak valid atau dengan kata lain program tidak ditulis dengan benar. Ini berarti bahwa Anda tidak dapat sembarangan memulai blok atau statemen (kecuali untuk blok utama yang secara default digunakan terus, tentu saja). Dalam kasus Anda dapat menggunakan blok baru, akan dijelaskan secara lebih detail dalam bab berikutnya seperti dalam Arus KontrolBagaimana Melakukan Indentasi

Selalu gunakan spasi untuk indentasi, dengan pemberhentian tapnya 4 spasi. Editor yang baik seperti Komodo Edit akan secara otomatis melakukan hal ini untuk Anda. Pastikan Anda menggunakan jumlah spasi yang konsisten untuk identasi, atau program Anda akan menampilkan pesan kesalahan.Catatan untuk programmer bahasa statik

Python akan selalu menggunakan indentasi untuk blok dan tidak pernah menggunakan kurung kurawal. Jalankan from __future__ import braces untuk mempelajari lebih jauh.

Rangkuman

Anda sudah membaca sekilas tentang dasar pemrograman Python. Sekarang kita telah melewati banyak pernik-pernik detail, dan kita dapat melanjutkan untuk hal-hal yang lebih menarik seperti Operator dan Ekspresi. Pastikan Anda sudah nyaman dengan apa yang Anda baca di bab ini.