Belajar dengan membaca secara berurutan

Boolean dan Menyusun Kondisi

Pelajari tipe boolean Python dan dasar percabangan if. Cakup True / False, perbandingan, serta operator logika and / or / not.

Apa itu boolean (bool)?

Boolean (bool) adalah tipe yang hanya bisa menampung dua nilai: True dan False. Begitulah Python merepresentasikan keadaan bertipe ya/tidak atau benar/salah — pada dasarnya apa saja yang punya dua pilihan.

Seperti int menangani angka dan str menangani string, bool adalah tipe khusus untuk nilai kebenaran.

Satu-satunya nilai yang bisa diambil bool
tipe boolTrue(benar)False(salah)nilai 1nilai 2

Tidak seperti tipe lain, bool terbatas pada dua nilai saja — True dan False. Itulah yang membuatnya sangat cocok dengan penugasan, perbandingan, dan percabangan kondisional.

True dan False harus diawali huruf kapital. Menulis true atau TRUE akan memberimu NameError.

Mereka juga bukan string, jadi jangan bungkus dalam tanda kutip seperti "True" (itu mengubahnya menjadi str).

# Menugaskan nilai bool
is_animal = True
is_human = False

print(is_animal)        # True
print(is_human)         # False
print(type(is_animal))  # <class 'bool'>

# Menulis "True" membuatnya menjadi str (hal yang berbeda)
looks_bool = "True"
print(type(looks_bool)) # <class 'str'>

Buat sebuah variabel bool di terminal.

① Tugaskan True ke is_student dan tampilkan dengan print().

② Tampilkan tipe is_student dengan type().

Python Editor

Jalankan kode untuk melihat output

Perbandingan menghasilkan boolean

Kamu tidak hanya mendapat boolean dengan mengetik True / Falseoperator perbandingan juga menghasilkannya.

Python punya enam operator perbandingan, dan masing-masing selalu mengembalikan True atau False (yakni bool).

OperatorArtiContohHasil
==sama dengan5 == 5True
!=tidak sama dengan5 != 3True
>lebih besar5 > 3True
<lebih kecil5 < 3False
>=lebih besar atau sama5 >= 5True
<=lebih kecil atau sama5 <= 3False
Alur sebuah perbandingan
age = 20age >= 18Trueage < 18Falseevaluasihasilevaluasihasil

Ketika sebuah ekspresi dievaluasi, ia mengembalikan True atau False. Kamu juga bisa menyimpan hasil itu ke variabel dan menggunakannya kembali.

age = 20

print(age == 20)      # True  (sama)
print(age != 18)      # True  (tidak sama)
print(age >= 18)      # True  (>=)
print(age < 18)       # False (<)

# Kamu bisa menyimpan hasilnya ke variabel
is_adult = age >= 18
print(is_adult)       # True
print(type(is_adult)) # <class 'bool'>

# String juga bisa dibandingkan (== dan != yang paling berguna)
print("apple" == "apple")  # True
print("apple" == "Apple")  # False (peka huruf besar-kecil)

= dan == berbeda

= (satu tanda sama dengan) adalah penugasan, dan == (dua tanda sama dengan) adalah perbandingan. age = 20 berarti "masukkan 20 ke age", sementara age == 20 bertanya "apakah age sama dengan 20?". Tertukar adalah cara mudah untuk menanam bug yang sulit ditemukan, jadi pisahkan keduanya dengan jelas.

Mulai dari score = 75, konfirmasi bahwa perbandingan menghasilkan boolean.

① Cetak hasil score == 100.

② Taruh hasil score >= 60 ke variabel passed, lalu cetak.

③ Tampilkan tipe passed dengan type().

Python Editor

Jalankan kode untuk melihat output

Menggunakan boolean dalam pernyataan if

Tempat paling sering kamu menemui boolean adalah pernyataan if (percabangan kondisional). Blok di dalam berjalan hanya ketika ekspresi setelah if bernilai True.

Kita akan bahas if lebih dalam nanti — untuk sekarang, cukup rasakan bagaimana bool mengubah perilaku.

if dan bool
if True: print(...)jalankan blokkeluaran munculif False: print(...)lewatitanpa keluaranTrueprintFalselewati

Akhiri baris if dengan titik dua :, dan tulis isinya dengan indentasi 4 spasi. Indentasi itulah yang memberitahu Python baris mana yang termasuk dalam if.

is_animal = True

# Berjalan karena is_animal True
if is_animal:
    print("Ini hewan")

# Dilewati karena is_human False — tidak mencetak apa-apa
is_human = False
if is_human:
    print("Ini manusia")

# Kamu bisa menaruh perbandingan langsung di if
age = 20
if age >= 18:
    print("Dewasa")

Latih percabangan dengan boolean berbeda.

① Definisikan is_open = True dan cetak "BUKA" ketika True.

② Definisikan temperature = 35 dan cetak "Hari panas" ketika temperature >= 30.

Python Editor

Jalankan kode untuk melihat output

Operator logika: and / or / not

Saat kamu ingin menggabungkan beberapa kondisi, pakai operator logika and / or / not.

Mereka menerima boolean sebagai input dan mengembalikan boolean — setara dengan kata "and" (dan), "or" (atau), "not" (tidak) dalam bahasa Inggris.

Perbedaan and / or / not
and(keduanya)True and TrueTrueor(salah satu)True or FalseTruenot(balik)not TrueFalsecontohhasilcontohhasilcontohbalik

and bernilai True hanya ketika kedua sisi True.

or bernilai True ketika salah satu sisi True.

not membalik True dan False.

Tabel kebenaran

Hasil and dan or sepenuhnya ditentukan oleh boolean di kiri dan kanan. Bayangkan mereka sebagai irisan (and) dan gabungan (or).

ABA and BA or B
TrueTrueTrueTrue
TrueFalseFalseTrue
FalseTrueFalseTrue
FalseFalseFalseFalse
is_man = True
is_adult = True

# and: True hanya ketika keduanya True
if is_man and is_adult:
    print("Pria dewasa")

# or: True ketika setidaknya satu True
if is_man or is_adult:
    print("Pria atau dewasa")

# not: balik nilainya
is_child = not is_adult
print(is_child)          # False

# Gabungkan dengan perbandingan
age = 25
if age >= 18 and age < 65:
    print("Dewasa usia kerja")

Dengan is_member = True dan age = 15, coba operator logika.

① Cetak hasil is_member and age >= 18.

② Cetak hasil is_member or age >= 18.

③ Cetak hasil not is_member.

Python Editor

Jalankan kode untuk melihat output

Jangan tulis &&, ||, !

Beberapa bahasa lain memakai &&, ||, dan !, tapi Python selalu memakai and, or, dan not (kata bahasa Inggris). Menulis && akan memberimu SyntaxError.

Di artikel ini kamu belajar tentang tipe boolean (bool) dan cara menggunakannya. Kamu melihat bahwa bool hanya menampung dua nilai, bahwa perbandingan menghasilkan boolean, bahwa pernyataan if memungkinkan percabangan berdasarkan mereka, dan bahwa and / or / not memungkinkan menggabungkan kondisi — fondasi bagi setiap kondisi yang akan kamu tulis.

Selanjutnya, kita akan melihat lebih dalam angka dengan tipe int dan float.

QUIZ

Cek Pemahaman

Jawab setiap pertanyaan satu per satu.

Soal 1Mana berikut ini yang merupakan nilai bool yang valid?

Soal 2Apa yang dicetak kode ini?
x = 10
print(x == 10 and x < 5)

Soal 3Apa yang dicetak kode ini?
is_open = False
print(not is_open)