Jenis Jenis Operator pada Python

 
Jenis Jenis Operator pada Python
Jenis Jenis Operator pada Python

Jenis Jenis Operator pada Python - Operator pada  Python adalah simbol khusus yang fungsinya menjalankan suatu operasi tertentu, baik operasi aritmatika maupun operasi logika. Sedangkan nilai yang dioperasikan oleh operator dinamakan sebagai operan.

Jenis-jenis operator pada python

Operator aritmatika

Operator matematika adalah operator-operator yang digunakan untuk menghitung operasi matematika, seperti penjumlahan, pengurangan, perkalian, dan lainnya.

Tabel Operator Matematika
Simbol Nama Fungsi Contoh
+ Penjumlahan Menjumlahkan nilai operan 5 + 1 = 6
- Pegurangan Mengurangkan nilai operan 10 - 10 = 0
* Perkalian Mengalikan nilai operan 2 * 2 = 4
/ Pembagian Membagi nilai operan 100 / 5 = 50
% Modulus Menghitung sisa hasil bagi dari operan 10 / 3 = 1
** Perpagkatan Menghitung pangkat dari operan 2 ** 3 = 8
// Pembagian Bulat Membagi operan lalu membulatkannya dengan menghapus angka dibelakang koma 10 // 3 = 3

Contoh :
a, b = 10, 3

print(a, '+', b, '=', a + b)
print(a, '-', b, '=', a - b)
print(a, '*', b, '=', a * b)
print(a, '/', b, '=', a / b)
print(a, '%', b, '=', a % b)
print(a, '**', b, '=', a ** b)
print(a, '//', b, '=', a //b)
Output :
10 + 3 = 13
10 - 3 = 7
10 * 3 = 30
10 / 3 = 3.3333333333333335
10 % 3 = 1
10 ** 3 = 1000
10 // 3 = 3

Operator komparasi atau perbandingan

Operator perbandingan adalah operator yang berfungsi untuk membandingkan antar dua operan. Apakah operan 1 lebih besar dari pada operan 2, atau apakah keduanya sama. 

Tabel operator perbandingan
Simbol Nama Contoh Hasil
> Lebih dari 5 > 5 False
< Kurang dari 2 < 4 True
== Sama dengan 10 == 10 True
!= Tidak sama dengan 5 != 5 False
>= Lebih dari atau sama dengan 10 >= 10 True
<= Kurang dari atau sama dengan 9 <= 10 True

Contoh :
a, b = 5, 10

print(a, '>', b, '=', a > b)
print(a, '<', b, '=', a < b)
print(a, '==', b, '=', a == b)
print(a, '!=', b, '=', a != b)
print(a, '>=', b, '=', a >= b)
print(a, '<=', b, '=', a <= b)
Output :
5 > 10 = False
5 < 10 = True
5 == 10 = False
5 != 10 = True
5 >= 10 = False
5 <= 10 = True

Operator penugasan

Operator penugasan adalah operator yang digunakan untuk menugaskan sebuah tugas terhadap sebuah variabel. Atau dalam bahasa yang lebih manusiawi, operator penugasan adalah operator yang berfungsi untuk memberikan nilai kepada sebuah variabel.

Sebenarnya operator penugasan ini hanya ada 1 saja, yaitu operator =.

Namun, ada banyak variant shortcut yang memudahkan kita untuk melakukan operasi aritmatika atau operasi bitwise bersamaan dengan operasi penugasan.

Tabel operator penugasan
Simbol Contoh Sama Dengan
= a = 10 a = 10
+= a += 5 a = a + 5
-= a -= 3 a = a - 3
*= a *= 6 a = a * 6
/= a /= 8 a = a / 8
%= a %= 9 a = a % 9
//= a //= 6 a = a // 6
**= a **= 1 a = a ** 1
&= a &= 2 a = a & 2
|= a |= 3 a = a
^= a ^= 4 a = a ^ 4
>>= a »= 4 a = a » 4
<<= a «= 2 a = a « 2

Contoh :
a = 10
print('a = 10 -> ', a)

a += 5
print('a += 5 -> ', a)

a -= 3
print('a -= 3 -> ', a)

a *= 6
print('a *= 6 -> ', a)

a /= 8
print('a /= 8 -> ', a)

# karena a jadi float, kita ubah lagi menjadi integer
a = int(a)

a %= 9
print('a %= 9 -> ', a)

a //= 6
print('a //= 6 -> ', a)

a **= 1
print('a **= 1 -> ', a)

a &= 2
print('a &= 2 -> ', a)

a |= 3
print('a |= 3 -> ', a)

a ^= 4
print('a ^= 4 -> ', a)

a >>= 4
print('a >>= 4 -> ', a)

a <<= 2
print('a <<= 4 -> ', a)
Output :
a = 10 ->  10
a += 5 ->  15
a -= 3 ->  12
a *= 6 ->  72
a /= 8 ->  9.0
a %= 9 ->  0
a //= 6 ->  0
a **= 1 ->  0
a &= 2 ->  0
a |= 3 ->  3
a ^= 4 ->  7
a >>= 4 ->  0
a <<= 4 ->  0
Keterangan : dari beberapa operator terakhir di atas mengandung operasi bitwise.

Operator logika

Operator logika adalah operator yang sangat penting. Operator ini sangat berkaitan erat dengan operator perbandingan. Dan kedua-duanya juga mengembalikan nilai dengan tipe data yang sama yaitu boolean.

Tabel dari operator logika
Simbol fungsi Contoh
and Mengembalikan True jika dua statement sama-sama benar True and True
or Mengembalikan True jika salah satu statement bernilai benar 2 > 5 or 1 < 3
not Menegasikan hasil. True menjadi False dan sebaliknya not(1 > 5)

Contoh :
print(True and True)
print(1 + 2 == 3 and True)
print('----')
print(False or 1 > 5)
print(False or 5 > 2)
print('----')
print(not(1 > 5))
print(not(1 < 5))  
Output :
True
True
----
False
True
----
True
False 

Operator keanggotaan

Python adalah bahasa pemrograman yang terbilang unik, ia memiliki operator khusus atau juga sering dinamakan sebagai operator spesial. Dinamakan spesial karena memang operator ini hanya ada di Python dan tidak ada di bahasa pemrograman lainnya. Di antara operator spesial tersebut adalah operator keanggotaan. Atau dinamakan membership operator. Operator ini  hanya memiliki dua variant, yaitu in dan not in. 

Tabel Operator keanggotaan
Simbol fungsi
in Bernilai true jika variabel ada di dalam sequence
not in Bernilai false jika variabel tidak ada di dalam sequence

Contoh :
perusahaan = 'Microsoft'
list_pulau = ['Jawa', 'Sumatra', 'Sulawesi']

mahasiswa = {
  'nama': 'Lendis Fabri',
  'asal': 'Lamongan'
}

print("Apakah 'c' ada di variabel perusahaan?", 'c' in perusahaan)
print("Apakah 'z' tidak ada di variabel perusahaan?", 'c' not in perusahaan)
print("Apakah 'Madura' ada di variabel list_pulau?", 'Madura' in perusahaan)
print("Apakah 'Madura' tidak ada di variabel list_pulau?", 'Madura' not in perusahaan)
print("Apakah atribut 'nama' ada di variabel mahasiswa?", 'nama' in mahasiswa)
Output :
Apakah 'c' ada di variabel perusahaan? True
Apakah 'z' tidak ada di variabel perusahaan? False
Apakah 'Madura' ada di variabel list_pulau? False
Apakah 'Madura' tidak ada di variabel list_pulau? True
Apakah atribut 'nama' ada di variabel mahasiswa? True

Operator identitas

Selain operator keanggotaan, python juga masih memiliki operator spesial lainnya: yaitu operator identitas. Operator ini didefinisikan dengan is dan is not. Tugasnya adalah untuk mengetahui apakah dua buah variabel memiliki nilai yang sama dan posisi yang sama di dalam memori. Karena tidak semua nilai yang sama, memiliki tempat / posisi yang sama di memori.

Tabel Operator Identitas
Simbol fungsi
is Bernilai true jika dua variabel bersifat identik baik dari segi nilai mau pun penempatan lokasi di memory
is not Bernilai false jika dua variabel tidak identik baik dari segi nilai mau pun penempatan lokasi di memory

Contoh :
a = 5
b = 5
list_a = [1, 2, 3]
list_b = [1, 2, 3]
nama_a = 'budi'
nama_b = 'budi'

# output True
print('a is b:', a is b)
# output False
print('a is not b:', a is not b)

# output False
print('list_a is list_b:', list_a is list_b)
# output True
print('list_a == list_b:', list_a == list_b)

# output True
print('nama_a is nama_b:', nama_a is nama_b)
# output False
print('nama_a is not nama_b:', nama_a is not nama_b)  
Output :
a is b: True
a is not b: False
list_a is list_b: False
list_a == list_b: True
nama_a is nama_b: True
nama_a is not nama_b: False
Keterangan :
Perhatikan output dari kode program di atas. Dari 3 pasang variabel yang kita tes, masing-masing memiliki nilai yang sama.
  • Variabel a dan b sama-sama memiliki nilai 5. Dan ketika kita periksa, mereka equal dan identical. Alias interpreter python menaruh nilai dari kedua variabel tersebut pada lokasi yang sama dalam memory.
  • Pada pasangan kedua, variabel list_a dan list_b juga memiliki nilai yang sama. Setelah kita tes, ternyata mereka berdua tidak identical meskipun nilai mereka berdua equal. Artinya, interpreter python menaruh nilai dari 2 variabel tersebut pada tempat yang berbeda pada memory.
  • Untuk pasangan yang terakhir, variabel nama_a dan nama_b yang bertipe data string, mereka berdua memiliki nilai yang equal dan juga identical.

Operator bitwise

Operator bitwise adalah operator yang berhubungan dengan angka-angka biner. Angka-angka biner adalah angka 0 dan 1. Dan pada hakikatnya hanya ini lah angka yang dipahami oleh mesin. Sebelum memulanya, kalian dapat mengetahui nilai biner dari suatu angka desimal dengan melakukan perintah format. Berikut ini demonstrasi menggunakan python mode interaktif.
>>> # biner dari angka 0
>>> print(format(0, '08b'))
00000000
>>> # biner dari angka 1
>>> print(format(1, '08b'))
00000001
>>> # biner dari angka 2
>>> print(format(2, '08b'))
00000010
>>> # biner dari angka 37
>>> print(format(37, '08b'))
00100101
>>>

Tabel operator bitwise
Simbol Nama Fungsi
& Bitwise AND Mengembalikan bit 1 jika dua bit bernilai 1
| Bitwise OR Mengembalikan bit 1 jika salah satu bit bernilai 1
^ Bitwise XOR Mengembalikan bit 1 jika hanya satu bit saja yang bernilai 1
- Bitwise NOT Membalikkan semua bit
>> Bitwise right shift Menggeser bit ke kanan dengan mendorong salinan digit sebelah kiri dan membiarkan digit sebalah kanan terlepas
<< Bitwise left shift Menggeser bit ke kiri dengan mendorong digit 0 dan membiarkan bit paling kiri terlepas

Contoh :
a = 1
b = 64

print('a =', a, '=', format(a, '08b'))
print('b =', b, '=', format(b, '08b'), '\n')

print('[and]')
print('a & b =', a & b)
print(format(a, '08b'), '&', format(b, '08b'), '=', format(a & b, '08b'), '\n')

print('[or]')
print('a | b =', a | b)
print(format(a, '08b'), '|', format(b, '08b'), '=', format(a | b, '08b'), '\n')

print('[xor]')
print('a ^ b =', a ^ b)
print(format(a, '08b'), '^', format(b, '08b'), '=', format(a ^ b, '08b'), '\n')

print('[not]')
print('~a ~b =', ~a, ~b)
print('~' + format(a, '08b'), '~' + format(b, '08b'), '=', format(~a, '08b'), format(~b, '08b'), '\n')

print('[shift right]')
print('a >> b =', a >> b)
print(format(a, '08b'), '>>', format(b, '08b'), '=', format(a >> b, '08b'), '\n')

print('[shift left]')
print('b << a =', b << a)
print(format(b, '08b'), '<<', format(a, '08b'), '=', format(b << a, '08b'), '\n') 
Output :
a = 1 = 00000001
b = 64 = 01000000 

[and]
a & b = 0
00000001 & 01000000 = 00000000 

[or]
a | b = 65
00000001 | 01000000 = 01000001 

[xor]
a ^ b = 65
00000001 ^ 01000000 = 01000001 

[not]
~a ~b = -2 -65
~00000001 ~01000000 = -0000010 -1000001 

[shift right]
a >> b = 0
00000001 >> 01000000 = 00000000 

[shift left]
b << a = 128
01000000 << 00000001 = 10000000 

Penutup

Sekian pembahasan kali ini tentang operator pada Python. Semoga bermanfaat!