A. Ekspresi
Expresi adalah suatu bentuk penulisan yang menghasilkan suatu nilai. Dalam bentuk sederhana
ekspresi berupa sebuah
operator atau
variable dan dalam bentuk kompleks ekspresi melibatkan operator dan operand.
Kegunaan
ekspresi :
- melakukan perhitungan
- melakukan pembandingan
- melakukan manipulasi terhadap teks ataupun berbagai struktur data seperti list dan tuple
Contoh
ekspresi :
1+2-3
Contoh
ekspresi diatas digunakan untuk memperoleh hasil penjumlahan 1 dengan 2 kemudian dikurangi dengan 3. Pada
ekspresi diatas tanda + dan - disebut dengan
operator sedangkan 1,2, dan 3 merupakan operand.
B. Operator
Dalam
bahasa pemrograman Python terdapat cukup banyak
operator, yaitu :
1. Operator Aritmatika
Operator aritmatika adalah
operator yang berhubungan dengan perhitungan bilangan. Adapun daftar
operator aritmatika dalam bahasa pemrograman Python seperti dibawah ini :
-
** : Perpangkatan
-
- : Negasi
-
* : Perkalian
-
/ : Pembagian
-
% : Sisa Pembagian
-
+ : Penjumlahan
-
- : Pengurangan
Adapun dalam hubungannya dengan operasi aritmatika,
Python melakukan pengkonversian tipe data dengan ketentuan sebagai berikut :
- Jika terdapat operand yang berupa bilangan kompleks, yang lain akan dikonversikan ke bilangan kompleks.
- Jika terdapat operand yang berupa bilangan titik-mengambang, yang lain akan dikonversikan ke bilangan titik mengambang
- Jika terdapat operand yang berupa bilangan bulat panjang, yang lain akan dikonversikan ke bilangan bulat panjang
- Jika kedua operand berupa bilangan bulat biasa maka tidak ada pengonversian
Contoh :
Jika menuliskan ekspresi 3/2 hasilnya adalah 1
Jika menuliskan ekspresi 3/2.0 hasilnya adalah 1.5
2. Operator Penggabungan String
Dalam
bahasa pemrograman Python untuk menggabungkan dua buah string bisa digunakan
operator +. Contoh :
a = "Pemrograman" (Tekan Enter)
b = " Python" (Tekan Enter)
c = a + b (Tekan Enter)
c (Tekan Enter)
Hasilnya akan tampak seperti gambar dibawah ini :
Selain
operator +, terdapat juga
operator * yang akan menghasilkan pengulangan dari string sebanyak n kali.
Bentuk umumnya :
string * n
Contoh :
a = "Halo " * 5 (Tekan Enter)
a (Tekan Enter)
Hasilnya tampak seperti gambar dibawah ini :
3. Operator Pembanding
Operator pembanding biasanya digunakan untuk melakukan pembandingan dua buah operand. Pembandingan dapat berupa kesamaan atau ketidaksamaan, atau berbagai hal lain. Hasil pembandingan berupa angka 0 (menyatakan salah) dan 1 (menyatakan benar).
Berikut
operator pembanding dalam bahasa pemrograman Python :
-
> : Lebih dari. Contoh : 5 > 6 = 0
-
< : Kurang dari. Contoh : 5 < 6 = 1
-
= atau
= = : Sama dengan. Contoh : 5 = 6 = 0
-
<> atau
!= : Tidak sama dengan. Contoh : 5
<> 6 = 1
- >= : Lebih dari sama dengan. Contoh : 5 >= 6 = 0
- <= : Kurang dari sama dengan. Contoh : 5 <= 6 = 0
Contoh :
"GnouBdilS" == "gnoubdils" (Tekan Enter)
5 > 6 (Tekan Enter)
5 < 6 (Tekan Enter)
"GnouBdilS" <> "GnouBdilS" (Tekan Enter)
Hasilnya akan tampil seperti gambar dibawah ini :
Khusus untuk tipe data string terdapat
operator pembanding berupa
in. Bentuk umumnya :
str1 in str2
Hasil pembandingan akan menampilkan benar bila str1 ada pada str2. Contoh :
str1 = "ri" (Tekan Enter)
str2 = "rian aulia dwilazuaris" (Tekan Enter)
str1 in str2 (Tekan Enter)
"ir" in str2 (Tekan Enter)
Hasilnya seperti gambar dibawah ini :
4. Operator Berbasis Bit
Python mendukung
operator yang beroperasi pada level bit (0 dan 1) berupa :
-
& (dan untuk biner)
-
| (atau untuk biner)
-
^ (atau ekslusif / xor)
-
~ (inversi untuk biner)
-
<< (geser kiri)
-
>> (geser kanan)
a. Operator
&
Operator & berguna untuk melakukan operasi "dan" pada level bit. Berikut sifat operasi bit dengan
operator & :
- bit1 = 0 & bit2 = 0 maka hasilnya adalah 0
- bit1 = 0 & bit2 = 1 maka hasilnya adalah 0
- bit1 = 1 & bit2 = 0 maka hasilnya adalah 0
- bit1 = 1 & bit2 = 1 maka hasilnya adalah 1
Dari sifat operasinya tampak bahwa bit hasil berupa 1 hanya akan dihasilkan bila kedua bit yang dikenakan operator
& bernilai 1.
Contoh :
9 & 10 (Tekan Enter)
29 & 7 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
- Angka 9 bila di konversikan ke biner adalah 1001
- Angka 10 bila dikonversikan ke biner adalah 1010
- Jadi bila digunakan
operator & berdasarkan sifat operasinya diatas akan menghasilkan nilai biner 1000 yang merupakan angka 8
b. Operator
|
Operator | berguna untuk melakukan operasi "atau" pada level biner. Berikut sifat operasi biner antarbit dengan
operator | :
- bit1 = 0 | bit2 = 0 maka hasilnya adalah 0
- bit1 = 0 | bit2 = 1 maka hasilnya adalah 1
- bit1 = 1 | bit2 = 0 maka hasilnya adalah 1
- bit1 = 1 | bit2 = 1 maka hasilnya adalah 1
Dari sifat operasinya tampak bahwa bit hasil berupa 0 hanya akan dihasilkan bila kedua bit yang dikenakan
operator | bernilai 0.
Contoh :
9 | 10 (Tekan Enter)
29 | 7 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
- Angka 9 bila di konversikan ke biner adalah 1001
- Angka 10 bila dikonversikan ke biner adalah 1010
- Jadi bila digunakan
operator | berdasarkan sifat operasinya diatas akan menghasilkan nilai biner 1011 yang merupakan angka 11
c. Operator
^
Operator ^ berguna untuk melakukan operasi "atau ekslusif(xor)" pada level biner. Berikut sifat operasi biner antarbit dengan
operator ^ :
- bit1 = 0 ^ bit2 = 0 maka hasilnya adalah 0
- bit1 = 0 ^ bit2 = 1 maka hasilnya adalah 1
- bit1 = 1 ^ bit2 = 0 maka hasilnya adalah 1
- bit1 = 1 ^ bit2 = 1 maka hasilnya adalah 0
Dari sifat operasinya tampak bahwa bit hasil berupa 1 hanya akan dihasilkan bila salah satu bit yang dikenakan
operator ^ bernilai 1.
Contoh :
9 ^ 10 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
- Angka 9 bila di konversikan ke biner adalah 1001
- Angka 10 bila dikonversikan ke biner adalah 1010
- Jadi bila digunakan
operator ^ berdasarkan sifat operasinya diatas akan menghasilkan nilai biner 0011 yang merupakan angka 3.
d. Operator
~
Operator ini memberikan hasil dengan masing-masing bit berupa kebalikan dari bit operand.
Contoh :
~185 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
Angka 185 bila dikonversikan kedalam binner adalah 000..10111001
Dilihat dari sifatnya yang membalikan bit operand hasilnya 111..101000110 yang merupakan angka (-186)
e. Operator
<<
Operator << (geser kiri) berfungsi untuk menggeser bit-bit kekiri. Jumlah penggeseran ditentukan oleh operand yang terletak dikanan operator ini. Contoh :
29 << 1 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
Angka 29 bila dikonversikan ke binner adalah 00011101 bila digeser ke kiri 1 bit hasilnya adalah 00111010 yang merupakan angka 58
f. Operator
>>
Operator >> (geser kanan) berfungsi untuk menggeser bit-bit ke kanan. Jumlah penggeseran ditentukan oleh operand yang terletak dikanan operator ini. Contoh :
29 >> 1 (Tekan Enter)
Hasilnya seperti dibawah ini :
Penjelasan :
Angka 29 bila dikonversikan ke binner adalah 00011101 bila digeser ke kanan1 bit hasilnya adalah 00001110 yang merupakan angka 14
5. Operator Logika
Operator logika biasa digunakan untuk membentuk suatu keadaan logika (benar atau salah) berdasarkan sebuah atau dua buah ekspresi kondisi (tergantung
operator logika yang digunakan). Adapun
operator logika yang ada dalam
bahasa pemrograman Python :
- and
- or
- not
Berikut ini merupakan table kebenaran operasi dengan
operator logika :
A | B | not A | A and B | A or B |
T | T | F | T | T |
T | F | F | F | T |
F | T | T | F | T |
F | F | T | F | F |
T = True, F = False
Contoh :
(1 < 2) and (2 < 3) (Tekan Enter)
(4 > 5) and (4 < 5) (Tekan Enter)
(3 > 4) or (2 < 3) (Tekan Enter)
not (5 < 4) (Tekan Enter)
Hasilnya seperti dibawah ini :
6. Prioritas Operator
Prioritas | Operator |
1 | () -> Tuple
[] -> List
{} -> Dictionary
'objek' (konversi string) |
2 | objek[i] -> Indeks
objek[i:j] -> Irisan
x.atribut -> Referensi atribut
fungsi() -> Pemanggilan fungsi |
3 | +x -> Positif
-x -> Negatif
~x -> Negasi bit |
4 | ** |
5 | *, /, % |
6 | +, - (sebagai penjumlah/pengurang) |
7 | <<, >> |
8 | & |
9 | ^ |
10 | | |
11 | <, <=, >, >=, !=, <>, is, is not, in, not in |
12 | not |
13 | and |
14 | or |
15 | lambda |
Selamat belajar..
Note :
- Untuk perhitungan konversi ke binner anda bisa menggunakan software Quick Number Base Converter yang bisa anda cari melalui google.