Skip to main content
Selain ekspresi dengan beragam jenis, operator pun memiliki berbagai jenis yang dikelompokkan menjadi operator aritmetika, operator relational, operator logika, dan operator assignment.

Operator Aritmetika

Jenis pertama adalah operator untuk melakukan operasi aritmetika. Perhatikan tabel di bawah ini untuk memahami contoh penerapan operator aritmetika. Asumsikan x bernilai 11 dan y bernilai 5.
OperatorDeskripsiContoh
Penjumlahan (+)Menambahkan nilai dari kedua operan.x + y = 16
Pengurangan (-)Mengurangi nilai dari kedua operan.x - y = 6
Perkalian (*)Mengalikan nilai dari kedua operan.x * y = 55
Pembagian Bulat (//)Membagi nilai dari kedua operan. Jika operan adalah integer, hasil operasi adalah bilangan bulat.x // y = 2
Pembagian Riil (/)Membagi nilai dari kedua operan. Jika operan adalah float, hasil operasi adalah bilangan riil.x / y = 2.2
Modulo (%)Sisa hasil pembagian nilai dari dua operan.x % y = 1
Pangkat (**)Memangkatkan nilai dari dua operan.x ** y = 161051
Semua operator aritmetika di atas adalah jenis untuk melakukan operasi aritmetika yang sering dijumpai. Mari lihat penerapannya pada Python.
x = 11
y = 5

print(x + y)
print(x - y)
print(x * y)
print(x // y)
print(x / y)
print(x % y)
print(x ** y)

"""
Output:

16
6
55
2
2.2
1
161051
"""
Pada kode di atas, Anda telah menerapkan seluruh operasi menggunakan operator aritmetika. Jika kita lihat lebih detail, seluruh output tersebut memiliki hasil yang sama dengan tabel sebelumnya.

Operator Relasional

Operator relasional merupakan operator perbandingan antara dua operan yang berupa integer, float, string, ataupun boolean. Hasil akhir dari operator ini adalah nilai bertipe boolean. Perhatikan tabel di bawah untuk memahami contoh penerapan operator relasional. Asumsikan kedua variabel bertipe numerik atau float dengan x bernilai 5 dan y bernilai 10.
OperatorDeskripsiContoh
Sama dengan (==)Menghasilkan True, jika kedua operan bernilai sama.x == y, menghasilkan False.
Tidak Sama dengan (!=)Menghasilkan True, jika kedua operan tidak bernilai sama.x != y, menghasilkan True.
Lebih Besar dari (>)Menghasilkan True, jika operan kiri lebih besar dari operan kanan.x > y, menghasilkan False.
Kurang dari (<)Menghasilkan True, jika operan kanan lebih besar dari operan kiri.x < y, menghasilkan True.
Lebih Besar dari Sama dengan (>=)Menghasilkan True, jika operan kiri lebih besar atau sama dengan operan kanan.x >= y, menghasilkan False.
Kurang dari Sama dengan (<=)Menghasilkan True, jika operan kanan lebih besar atau sama dengan operan kiri.x <= y, menghasilkan True.
Pada dasarnya, ini adalah operator yang membandingkan dua nilai dengan hasil akhir bertipe boolean. Mari lihat penerapannya pada Python.
x = 5
y = 10

print(x == y)
print(x != y)
print(x > y)
print(x \< y)
print(x >= y)
print(x \<= y)

"""
Output:

False
True
False
True
False
True
"""
Pada kode di atas, Anda telah menerapkan seluruh operasi menggunakan operator relasional. Jika kita lihat lebih detail, seluruh output tersebut memiliki hasil yang sama dengan tabel sebelumnya. Sebagaimana telah dijelaskan sebelumnya, operator relasional dapat menggunakan operan bertipe integer, string, ataupun float. Kode di atas telah menggunakan operan bertipe integer, Anda juga bisa mengubahnya dengan operan bertipe float. Namun, berbeda halnya dengan operan bertipe string. Anda dapat melihat tabel di bawah untuk contoh penerapannya. Asumsikan x bernilai “Dicoding” dan y bernilai “Indonesia”.
OperatorDeskripsiContoh
Sama dengan (==)Menghasilkan True, jika kedua string memiliki nilai yang identik/sama persis.x == y, menghasilkan False.
Tidak Sama dengan (!=)Menghasilkan True, jika kedua string memiliki nilai yang tidak sama.x != y, menghasilkan True.
Lebih Besar dari (>)Menghasilkan True, jika huruf pertama pada string pertama memiliki nilai unicode dengan urutan yang lebih tinggi dibandingkan huruf pertama pada string kedua.x > y, menghasilkan False.
Kurang dari (<)Menghasilkan True, jika huruf pertama pada string pertama memiliki nilai unicode dengan urutan yang lebih rendah dibandingkan huruf pertama pada string kedua.x < y, menghasilkan True.
Lebih Besar dari Sama dengan (>=)Menghasilkan True, jika huruf pertama pada string pertama memiliki nilai unicode dengan urutan yang lebih tinggi atau sama dibandingkan huruf pertama pada string kedua.x >= y, menghasilkan False.
Kurang dari Sama dengan (<=)Menghasilkan True, jika huruf pertama pada string pertama memiliki nilai unicode dengan urutan yang lebih rendah atau sama dibandingkan huruf pertama pada string kedua.x <= y, menghasilkan True.
::: info Catatan Nilai unicode adalah standar internasional yang menetapkan kode numerik untuk setiap karakter dari hampir semua sistem tulisan dan simbol-simbol yang digunakan oleh manusia. ::: Mari lihat implementasinya pada contoh kode di bawah ini.
x = "Dicoding"
y = "Indonesia"

print(x == y)
print(x != y)
print(x > y)
print(x \< y)
print(x >= y)
print(x \<= y)

"""
Output:

False
True
False
True
False
True
"""
Perhatikan kode di atas, string “Dicoding” dan “Indonesia” tidak sama sehingga sintaks operator sama dengan ”==” menghasilkan nilai False, sedangkan operator tidak sama dengan ”!=” menghasilkan nilai True. Operator sisanya akan membandingkan huruf D pada string “Dicoding” dan huruf I pada string “Indonesia”. Anda bisa mencoba mengganti huruf pertama tersebut untuk memahami lebih detail.

Operator Logika

Operator logika merupakan jenis operator untuk melakukan operasi logika dengan kedua operannya bertipe boolean. Hasil akhir dari operasi ini adalah nilai bertipe boolean. Perhatikan kode di bawah ini untuk memahami contoh penerapannya, asumsikan bahwa p bernilai True dan q bernilai False.
OperatorDeskripsiContoh
”AND” atau ”&“Logika yang hanya menghasilkan True jika kedua operan bernilai True.p and q = False, p & q = False
”OR” atau ”|“Logika yang menghasilkan True jika salah satu dari kedua operan bernilai True.p or q = True, p | q = True
NOTLogika yang bertujuan untuk membalikkan nilai logika dari operannya.not q = True
Jenis operator ini membandingkan dua operan bertipe boolean. Perhatikan gambar ini untuk memahaminya lebih dalam. dos:559e28c4cf3b9c694a2c0122a88ca1b620230728090557.jpeg Operator AND hanya akan menghasilkan nilai True jika kedua operannya bernilai True. Operator OR akan menghasilkan nilai True jika salah satunya bernilai True. Operator NOT hanya akan membalikkan nilai logika; jika True, False yang akan dikembalikan, begitupun sebaliknya. Mari kita bedah satu per satu jenis operator di atas.

Operator AND

dos:a4e7715072de241440547eb483c7d4e620230728090557.jpeg Pada tabel di atas, operator AND hanya akan menghasilkan nilai TRUE jika kedua operan, yakni P dan Q bernilai TRUE. Sisanya akan menghasilkan nilai FALSE. Mari lihat penerapannya pada Python.
print(True and True)
print(True and False)
print(False and True)
print(False and False)


"""
Output:

True
False
False
False
"""
Pada kode di atas, Anda menerapkan seluruh contoh yang ada pada tabel sebelumnya menjadi program Python. Dapat dilihat bahwa hanya jika kedua operan bernilai True yang menghasilkan nilai True.

Operator OR

dos:65391a944424685ffa4b11fb5fda1aa320230728090557.jpeg Pada tabel di atas, operator OR akan menghasilkan nilai TRUE jika salah satu atau kedua operan (yakni P atau Q) bernilai True. Mari lihat penerapannya pada Python.
print(True or True)
print(True or False)
print(False or True)
print(False or False)


"""
Output:

True
True
True
False
"""
Pada kode di atas, Anda menerapkan seluruh contoh yang ada pada tabel sebelumnya menjadi program Python. Dapat dilihat bahwa jika salah satu atau kedua operan bernilai True, hasil akhirnya bernilai True.

Operator NOT

dos:7098dc791e8ae1734bf7094c8104be7620230728090556.jpeg Pada tabel di atas, operator NOT akan membalikkan nilai boolean dari operan aslinya atau disebut sebagai negasi. Mari lihat penerapannya pada Python.
print(not True)
print(not False)

"""
Output:

False
True
"""
Pada kode di atas, Anda menerapkan seluruh contoh yang ada pada tabel sebelumnya menjadi program Python. Dapat dilihat bahwa jika operan bernilai True, hasilnya False dan sebaliknya.

Operator Assignment

Operator selanjutnya adalah assignment. Operator ini bertujuan untuk melakukan proses assignment atau pemberian nilai pada suatu variabel dengan nilai tetap. Perhatikan tabel di bawah ini untuk memahami contoh penerapan operator assignment. Asumsikan x bernilai 11 dan y bernilai 5.
OperatorDeskripsiContoh
+=Menyederhanakan operasi x = x + y.x += y, menghasilkan nilai 16.
-=Menyederhanakan operasi x = x - y.x -= y, menghasilkan nilai 6.
*=Menyederhanakan operasi x = x * y.x *= y, menghasilkan nilai 55.
/=Menyederhanakan operasi x = x / y.x /= y, menghasilkan nilai 2.2.
%= Menyederhanakan operasi x = x % y.x %= y, menghasilkan nilai 1.
Sederhananya, seluruh operator di atas setara dengan x = x \<operator> y. Biasanya, Anda akan sering menjumpai operator assignment ini pada perulangan (Anda akan mempelajarinya nanti). Perulangan pada pemrograman berarti Anda membuat sebuah program yang akan terus berulang hingga berakhir karena suatu kondisi. Salah satu caranya agar dapat terus berulang adalah dengan menambahkan operator assignment. Mari lihat penerapannya pada Python.
# +=
x = 11
x += 5
print(x)

# -=
x = 11
x -= 5
print(x)

# *=
x = 11
x *= 5
print(x)

# /=
x = 11
x /= 5
print(x)

#%=
x = 11
x%= 5
print(x)


"""
Output:
16
6
55
2.2
1
"""
Dalam kode di atas, Anda menerapkan seluruh contoh yang ada pada tabel sebelumnya menjadi program Python. Masih bingung? Mari lihat salah satu kode di atas dan bedah lebih dalam.
x = 11
x += 5
print(x)


x = 11
x = x + 5
print(x)

"""
Output:
16
16
"""
Kode “x += 5” setara dengan “x = x + 5”. Asumsikan x bernilai 11, hasil yang didapat dari kedua kode di atas adalah 16. Seolah-olah Anda melakukan operasi seperti berikut: “x = 11 + 5”.