TUJUAN
Mahasiswa mampu menjelaskan input, output dan operator dan mengimple-
mentasikannya.
Input/Output
Di bagian ini kita akan mempelajari tentang mekanisme Input/Output, misalnya
meminta masukan dari pengguna, menyimpan nilai pada variabel dan mencetak
nilai ke layar. Input adalah masukan yang kita berikan ke program. Program
akan memprosesnya dan menampilkan hasil outputnya. Input, proses, dan
output adalah inti dari semua program komputer.
Output
Print
Seperti dicontohkan dalam beberapa sample code sebelumnya, fungsi print()
ada-lah cara output langsung ke konsol/layar.
1. print("Hello, World!")
Output :
Hello, World!
Memasukkan nilai variabel pada string
Untuk memasukkan nilai variabel pada string, Python memiliki dua cara. Cara
yang pertama adalah langsung menggabungkan variabel pada statement print().
1. a = 5
2. print('The value of a is', a)
Output:
The value of a is 5
Untuk menampilkan text (string), bisa menggunakan mekanisme string format.
Misalnya yang pertama:
1. print('hello {}'.format('kakak'))
Cara yang kedua mirip dengan sintaks C/C++, yakni menggunakan operator
“%” yang ditambahkan dengan "argument specifiers", misalnya "%s" and "%d".
Contohnya saat kita ingin menambahkan nama kita pada string hello:
1. name = "John"
2. print("Hello, %s!" % name)
Output:
Hello, John!
Contoh menambahkan string dan integer:
1. name = "John"
2. age = 15
3. print("%s is %d years old." % (name, age))
Output:
John is 15 years old.
Contoh menambahkan objek selain string (otomatis dikonversi):
1. mylist = [1,2,3]
2. print("A list: %s" % mylist)
Output:
A list: [1, 2, 3]
Beberapa argument specifier yang umum digunakan:
1. %s - String
2. %d - Integers
3. %f - Bilangan Pecahan
4. %.<digit>f - Bilangan pecahan dengan sejumlah digit angka dibelakang
koma.
5. %x/%X - Bilangan bulat dalam representasi Hexa (huruf kecil/huruf besar)
Contoh mencetak representasi Hexa (bilangan basis 16):
1. a, b = 10, 11
2. a, b
3. print('a: %x and b: %X' % (a, b))
Output:
(10, a: a and b:
B)
Input
input()
Untuk memungkinkan user memberikan input pada program kita, gunakan
fungsi input(), dengan argumen dalam kurung () adalah teks yang ingin ditam-
pilkan (prompt) dan variabel sebelum tanda sama dengan (=) adalah penampung
hasil dari input pengguna:
1. num = input('Enter a number: ')
Output:
Enter a number: 10
1. num
Output:
‘10'
Secara default, input dari user adalah string (walaupun pada contoh di atas, 10
sebenarnya dimaksudkan sebagai integer) yang ditandai dengan petik. Untuk itu
diperlukan fungsi konversi yang akan dibahas pada modul-modul selanjutnya,
misalnya int() dan float().
1. int(num)
Output:
10
1. float(num)
Output:
10.0
Jika input merupakan string berisi ekspresi matematika, maka konversi dengan
int() atau float() akan menghasilkan error. Anda dapat menggunakan fungsi
eval() yang sekaligus juga berfungsi
menyelesaikan ekspresi matematika. Anda akan mempelajari lebih jauh menge-
nai fungsi pada modul Fungsi.
Command-line arguments
Python memungkinkan kita untuk membuat sebuah "skrip" berupa deretan kode
program kemudian disimpan dalam sebuah berkas dengan nama akhiran .py
(misal: skrip.py).
Berkas ini dapat dipanggil sebagai skrip di konsol atau command prompt, serta
dapat ditambahkan parameter tambahan saat memanggil skrip tersebut.
1. $ python test.py arg1 arg2 arg3
Hal ini difasilitasi oleh module sys yang telah dibawa secara default pada
Python. Untuk menggunakannya, jangan lupa lakukan import terlebih dahulu:
1. import sys
Utamanya fungsi yang akan digunakan adalah sys.argv yang memuat seluruh
argumen yang diterima. kita juga dapat menggunakan len(sys.argv) untuk
mengetahui banyaknya argumen yang ditampung.
Contoh, sebuah berkas test.py yang akan menambahkan tiga argumen:
1. import sys
2. print('Number of arguments:', len(sys.argv), 'arguments.')
3. print('Argument List:', str(sys.argv))
4. print(sys.argv[1])
Python dikenal sebagai salah satu bahasa yang menerapkan dynamic typing,
yakni bahasa pemrograman yang hanya mengetahui tipe variabel saat program
berjalan dan dilakukan assignment.
Tentu saja, pada Python juga umumnya tidak ada deklarasi variabel, hanya
berupa assignment statement. Cara ini adalah salah satu bentuk simplifikasi
alokasi memori dalam bahasa Python. Anda dapat selalu memeriksa tipe
variabel yang digunakan dengan fungsi type() dan memastikan tipe variabel
yang tepat dengan metode isinstance(). kita akan mempelajari lebih jauh
mengenai fungsi pada modul Fungsi dan mengenai class pada modul
Pemrograman Berorientasi Objek.
Contoh:
1. # Ketika kita memberikan nilai 6 pada variabel x
2. x = 6
3. print(type(x))
4. # Kemudian Berikan string “hello” pada variabel x di baris selanjutnya
5. x = 'hello'
6. print(type(x))
Output:
<class
<class 'str'>
Duck Typing
Python juga sering diafiliasikan dengan metode duck typing, yang
merefleksikan pada frase:
“if it walks like a duck and it quacks like a duck, then it must be a duck” (Jika
sesuatu berjalan seperti bebek dan bersuara seperti bebek, maka kemungkinan
besar ia adalah bebek).
Duck typing adalah sebuah konsep, tipe atau kelas dari sebuah obyek tidak lebih
penting daripada metode yang menjadi perilakunya. Duck typing ini tidak
terkait langsung dengan dynamic typing atau static typing, ini hanya
memberikan keleluasaan pada developer untuk tidak perlu mencemaskan
tentang tipe atau kelas dari sebuah obyek, yang lebih penting adalah
kemampuan melakukan operasinya. Sehingga untuk memeriksa dan mengetahui
tipe sebuah obyek, kita cukup memastikan metode/fungsi/behavior dari obyek
tersebut.
Misalnya fungsi len() untuk mengetahui panjang string, yang tidak berlaku pada
variabel numerik (misalnya integer).
1. x=333
2. len(x)
Output:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: object of type 'int' has no len()
Transformasi angka
Menambahkan awalan 0 pada angka
Misalnya untuk nomor nota atau nomor antrian, Anda akan menemui kebutuhan
menambahkan awalan 0 (0001 untuk angka 1, 0101 untuk angka 101, dan se-
bagainya). Kita dapat menggunakan fungsi zfill(). Catatannya adalah angka
harus dikonversi ke string terlebih dahulu:
1. x=1
2. type(x)
Output:
<type 'int'>
1. str(x).zfill(5)
Output:
'00001'
OUTPUT :
granada hotel
CERDIK CENDEKIA
Digunakan untuk
mengubah huruf str=’kelas programm
pertama dalam satu er’ Kelas
capita kalimat menjadi huruf s=str.capitalize() program
1 lize() kapital (huruf besar). print(s) mer
Digunakan untuk
mengisi karakter #Bentuk umum
dengan lebar tertentu center(lebar,karakter)
diantara suatu string. #Contoh
Sehingga str=’kelas programm
menempatkan string er’ –kelas
center berada pada posisi s=str.center(20,’-‘) program
2 () tengah (center). print(s) mer–
str=’kelas programm
er’
s=str.count(‘m’)
print(s)
#Menghasilkan
Digunakan untuk output 2 karena
menghitung berapa substr ‘m’ muncul 2
count( kali kemunculan substr kali dalam string
3 ) dalam suatu string tersebut. 2
Digunakan untuk
memeriksa apakah
string diakhiri dengan str=’kelas programm
suatu subtr atau tidak. er’
Fungsi ini akan s=str.endswith(‘progr
endsw menghasilkan ammer’)
4 ith() nilai boolean. print(s) True
Menghasilkan
nilai true jika string
terdiri dari str=’AB67′
isalnu karakter alfabet dan n s=str.isalnum()
7 m() umerik. print(s) True
Menghasilkan
nilai true jika str=’AB67@#’
isalph string HANYA terdiri s=str.isalpha()
8 a() dari karakter alfabet. print(s) False
Menghasilkan
nilai true jika string str=’dimas’
isspac terdapat s=str.isspace()
9 e() karakter spasi. print(s) False
Menghasilkan str=’12345′
1 isdigit nilai true jika string s=str.isdigit()
0 () berupa digit. print(s) True
Menghasilkan
nilai true jika string str=’ABC’
1 islowe berupa semua karakter s=str.islower()
2 r() huruf kecil print(s) False
Menghasilkan
nilai true jika string
berupa semua karakter str=’ABC’
1 isuppe huruf besar (huruf s=str.isupper()
3 r() kapital). print(s) True
Contoh 1 :
str=’ kelas programm
er’ Hasil 1:
s=str.lstrip() kelas
Memotong karakter print(s) program
awal pada string. Jika ———————— mer
tidak diisi nilai pada ——— ———
fungsi ini maka secara Contoh 2: ———–
default akan str=’kelas programm Hasil 2:
menghilangkan whiles er’ as
1 lstrip( pace ataupun tab pada s=str.lstrip(‘kel’) program
5 ) awal string. print(s) mer
Contoh 1 :
str=’kelas
programmer ‘
s=str.rstrip() Hasil 1:
Memotong karakter print(s) kelas
akhir pada string. Jika ———————— program
tidak diisi nilai pada ———— mer
fungsi ini maka secara Contoh 2: ———
default akan str=’kelas ———
menghilangkan whiles programmer’ Hasil 2:
1 rstrip( pace ataupun tab pada s=str.rstrip(‘mer’) kelas
6 ) awal string. print(s) program
#Mengganti kata
‘Belajar’ menjadi
‘Tutorial’
str=’Belajar Python’
Mengganti substring s=str.replace(‘Belajar
2 replac lama dengan substring ’,’Tutorial’) Tutorial
0 e() yang baru. print(s) Python
Menambah karakter 0
(nol) pada
string. Method ini
memiliki sebuah
parameter
yaitu width (lebar) str=’2′
2 zfill(w karakter yang s=str.zfill(3)
4 idth) diinginkan print(s) 002
Sebagai catatan fungsi-fungsi string di atas hanya sebagian referensi fungsi
built-in yang dapat digunakan untuk manipulasi string di python.
Karena fungsi upper() dan lower() mengembalikan string, maka kita dapat
melakukan operasi pada hasil operasinya (chain of method), contohnya:
1. print('Hello'.upper())
2. print('Hello'.upper().lower())
3. print('Hello'.upper().lower().upper())
4. print('HELLO'.lower())
5. print('HELLO'.lower().islower())
Output:
??
Metode is X dari String untuk Pengecekan
Selain islower() and isupper(), terdapat beberapa metode lain yang dapat
digunakan untuk memeriksa isi dari string. Semua method berikut mengembali-
kan nilai boolean:
a. isalpha() mengembalikan True jika string berisi hanya huruf dan tidak
kosong.
b. isalnum() mengembalikan True jika string berisi hanya huruf atau angka,
dan tidak kosong.
c. isdecimal() mengembalikan True jika string berisi hanya angka / nu-
merik dan tidak kosong.
d. isspace() mengembalikan True jika string berisi hanya spasi, tab, new-
line, atau whitespaces lainnya dan tidak kosong.
e. istitle() mengembalikan True jika string berisi kata yang diawali hu-ruf
kapital dan dilanjutkan dengan huruf kecil seterusnya.
Contoh:
1. 'hello'.isalpha()
Output:
??
1. 'hello123'.isalpha()
Output:
??
1. 'hello123'.isalnum()
Output:
??
1. 'hello'.isalnum()
Output:
??
1. '123'.isdecimal()
Output:
??
1. ' '.isspace()
Output:
??
1. 'This Is Title Case'.istitle()
Output:
??
1. 'This Is Title Case 123'.istitle()
Output:
??
1. 'This Is not Title Case'.istitle()
Output:
??
1. 'This Is NOT Title Case Either'.istitle()
Output:
??
Metode isX akan membantu misalnya dalam validasi input user. Kita bisa men-
cobanya dengan contoh berikut.Bukalah file baru pada notepad atau IDE, dan
sim
pan sebagai validateInput.py
1. while True:
2. print('Enter your age:')
3. age = input()
4. if age.isdecimal():
5. break
6. print('Please enter a number for your age.')
7. while True:
8. print('Select a new password (letters and numbers only):')
9. password = input()
10. if password.isalnum():
11. break
12. print('Passwords can only have letters and numbers.')
Output:
??
Dengan cukup memanggil isdecimal() dan isalnum(), kita dapat me-
nyingkat waktu untuk melakukan validasi input user.
Metode startswith() dan endswith() dari String
Fungsi startswith() dan endswith() akan mengembalikan nilai True
ber-dasarkan nilai awalan atau akhiran string.
Contohnya sebagai berikut:
1. 'Hello world!'.startswith('Hello')
Output:
??
1. 'Hello world!'.endswith('world!')
Output:
??
1. 'abc123'.startswith('abcdef')
Output:
??
1. 'abc123'.endswith('12')
Output:
??
1. l = [1,2,3,3,4,4,4,4,5,6]
2. s = set(l)
3. x = "Hello, World"
4.
5. print(l)
6. print(len(l))
7.
8. print(s)
9. print(len(s))
10.
11. print(x)
12. print(len(x))
Output:
[1,2,3,3,4,4,4,4,5,6]
10
{1,2,3,4,5,6}
6
“Hello, World”
12
Penggabungan dan Replikasi
Pada List juga dimungkinkan adanya penggabungan (+) dan replikasi (*).
1. [1, 2, 3] + ['A', 'B', 'C']
Output:
[1,2,3,’A’,’B’,’C’]
menggunakan fungsi range() pada Python. Lebih detail mengenai operasi peru-
langan akan dibahas pada modul Perulangan dan Kontrol Perulangan.
Fungsi range dapat memiliki 1-3 parameter:
1. Range dengan 1 parameter n: membuat deret bilangan yang dimulai dari 0,
sebanyak n bilangan.
1. for i in range(9):
2. print(i)
Output:
0,1,2,3,4,5,6,7,8
2. Range dengan 2 parameter n,p: membuat deret bilangan yang dimulai dari n,
hingga sebelum p ( bilangan p tidak ikut ). Sering disebut sebagai inklusif n
(deret dimulai bilangan n) dan eksklusif p (deret tidak menyertakan bilangan
p).
1. for i in range(3, 9):
2. print(i)
Output:
3,4,5,6,7,8
3. Range dengan 3 parameter n,p,q: membuat deret bilangan yang dimulai dari
n, hingga sebelum p (bilangan p tidak ikut), dengan setiap elemennya
memiliki selisih q.
1. [_ for _ in range(1, 9, 2)] # list comprehension
Output:
1,3,5,7
in dan not in
Untuk mengetahui sebuah nilai atau objek ada dalam list, Anda dapat
mengguna-
kan operator in dan not in. Fungsi ini akan mengembalikan nilai boolean True
atau False. Contohnya adalah sebagai berikut:
1. 'howdy' in ['hello', 'hi', 'howdy', 'heyas']
Output:
??
1. spam = ['hello', 'hi', 'howdy', 'heyas']
2. 'cat' in spam
Output:
??
1. 'howdy' not in spam
Output:
??
1. 'cat' not in spam
Output:
??
Memberikan nilai (assignment) untuk lebih dari 1 variabel sekaligus
Kita dapat memberikan nilai ke beberapa variabel sekaligus dari element List
atau Tuple. Sehingga tanpa perlu menandai satu-per-satu seperti:
1. cat = ['fat', 'orange', 'loud']
2. size = cat[0]
3. color = cat[1]
4. disposition = cat[2]
Kita dapat melakukannya:
1. cat = ['fat', 'orange', 'loud'] # From List
2. size, color, disposition = cat
3. cat = ('fat', 'orange', 'loud') # From Tuple
4. size, color, disposition = cat
Tentu saja jumlah variabel dan jumlah item pada List/Tuple harus sama. Jika
tidak, Python akan memberikan ValueError. Bagian ini hanya memberikan
gam-baran tentang operasi pada List/Tuple, Kita akan mempelajari lebih jauh
tentang kesalahan (Error) di modul Penanganan Kesalahan.
1. cat = ['fat', 'orange', 'loud']
2. size, color, disposition, name = cat
Output:
??
Tip: Penggunaan assignment pada multi variabel ini dapat kita gunakan untuk
menukar nilai dua atau lebih variabel:
1. a, b = 'Alice', 'Bob'
2. a, b = b, a
3. print(a)
4. print(b)
Output :
Bob
Alice
Sort
List dapat diurutkan dengan method sort(). Contohnya:
1. x = [2, 5, 3.14, 1, -7]
2. x.sort()
3. x
Output:
[-7,1,2,3,5,14]
1. y = ['ants', 'cats', 'dogs', 'badgers', 'elephants']
2. y.sort()
3. y
Output:
[‘ant’,’badgers’, ‘cats’, ‘dogs’, ‘elephants’]
Kita dapat memasukkan keyword reverse=True untuk menjadikan urutan yang
sebaliknya.
1. y.sort(reverse=True)
2. y
Output:
[‘elephants’, ‘dogs’, ‘cats’, ‘badgers’,’ant’]
Tiga hal yang perlu Anda ingat dalam metode sort:
1. Metode sort langsung melakukan pengurutan pada variabel yang dioperasi-
kannya, sehingga tidak perlu operasi assignment (=).
2. Metode sort tidak dapat mengurutkan list yang memiliki angka dan string
sekaligus di dalamnya.
1. z = [1, 3, 2, 4, 'Alice', 'Bob']
2. z.sort()
Output:
??
Bagian ini hanya memberikan gambaran tentang operasi sort, kita akan mem-
pelajari lebih jauh tentang kesalahan (Error) di modul Penanganan Kesalahan.
3. Metode sort menggunakan urutan ASCII, sehingga nilai huruf kapital
(uppercase) akan lebih dahulu dibandingkan huruf kecil (lowercase).
Contohnya:
1. m = ['Alice', 'ants', 'Bob', 'badgers', 'Carol', 'cats']
2. m.sort()
3. m
Output:
[‘Alice’, ‘Bob’, ‘Carol’, ‘ants’, ‘badgers’, ‘cats’]
Untuk mengatasi kendala ini, kita dapat memasukkan keyword str.lower sebagai
argumen metode sort. Hal ini akan membuat metode sort menganggap semua
objek menggunakan huruf kecil, tanpa mengubah kondisi asli dari objek
tersebut.
4. spam = ['a', 'z', 'A', 'Z']
5. spam.sort(key=str.lower)
6. spam
Output:
[‘a’, ‘z’, ‘a’, ‘z’]
Manipulasi String
String atau teks adalah salah satu bentuk data yang akan Anda olah dalam
program. Anda dapat melakukan penggabungan, pemisahan, sub-string,
penambahan/pengurangan spasi, konversi huruf kapital, format strings, dan
sebagainya.
String Literals
Umumnya, string ditulis dengan mudah di Python, diapit oleh tanda petik
tunggal. Tetapi, dalam kondisi tertentu, dibutuhkan petik tunggal di tengah
string (misalnya struktur kepemilikan dalam Bahasa Inggris - That’s Alice’s
Cat). Apabila kita menuliskannya sebagai 'That is Alice's cat.', maka Python
akan salah mengira bahwa string berakhir di Alice, dan selebihnya merupakan
kode yang invalid.
Namun Python memperbolehkan kita menggunakan petik dua seperti kita
menggunakan petik tunggal. Dalam kasus sebelumnya, kita cukup mengetikkan:
1. st = "That is Alice's cat."
Dan dalam contoh tersebut, Python mengenali bahwa petik tunggal adalah
bagian tidak terpisahkan dari string tersebut. Bagaimana jika kita memerlukan
kedua jenis petik dalam string tunggal? Python menyediakan escape character.
Escape Character memungkinkan kita untuk menggunakan karakter yang
sebelumnya tidak bisa dimasukkan dalam string. Umumnya diawali dengan
backslash (\) dan diikuti karakter tertentu yang diinginkan. Contohnya, untuk
petik tunggal Anda dapat menambahkan seperti : \'.
Cara ini merupakan cara paling aman untuk melakukan penambahan atau
penyuntingan dalam variabel.
Contohnya sebagai berikut:
1. st = 'Say hi to Bob\'s mother.'
Python mengetahui bahwa pada Bob\’s, sebelum petik terdapat backslash (\)
yang menandakan petik tunggal merupakan bagian dari string dan bukan
merupakan akhir dari string. Escape character \' dan \" memungkinkan Anda
untuk memasukkan karakter ' dan '' dalam bagian string. Beberapa contoh
Escape Cha-racter
a. \' Single quote
b. \" Double quote
c. \t Tab
d. \n Newline (line break)
e. \\ Backslash
Masukkan contoh berikut pada shell python atau notebook:
1. print("Hello there!\nHow are you?\nI\'m doing fine.")
Output:
??
Selain tanda kutip dan kutip-dua, untuk penulisan String di Python juga bisa
menggunakan 3 kutip-satu atau 3 kutip-dua, yang juga memiliki kemampuan
untuk menyimpan String lebih dari satu baris (multi-line).
1. multi_line = """Hello there!
2. How are you?
3. I'm fine."""
4. print(multi_line)
Output:
??
Raw Strings
String adalah jenis yang paling populer di bahasa pemrograman. Kita bisa
membuatnya hanya dengan melampirkan karakter dalam tanda kutip. Python
memperlakukan tanda kutip tunggal sama dengan tanda kutip ganda. Membuat
string semudah memberi nilai pada sebuah variabel.
print("Hello World")
1. pesan = 'Panggil saya di nomor 061 7981011 besok. Kalau sore bisa
hubungi kantor saya di 061 7939999.'
2. for i in range(len(pesan)):
3. text = pesan[i:i+11]
4. if is_phone_number(text):
5. print("Nomor telepon ditemukan:", text)
6. print("selesai")
Perbandingan
a. < atau operator.lt (less than)
o Menjalankan perbandingan apakah operand pertama lebih kecil dari ope-
rand kedua.
o 5 < 3 menghasilkan False and 3 < 5 menghasilkan True.
o Perbandingan dapat berisi lebih dari dua operand, misalnya 3 < 5 < 7
menghasilkan True.
b. > atau operator.gt (greater than)
o Menjalankan perbandingan apakah operand pertama lebih besar dari ope-
rand kedua.
o 5 > 3 menghasilkan True.
c. <= atau operator.le (less than or equal to)
o Menjalankan perbandingan apakah operand pertama lebih kecil atau sama
dengan operand kedua.
o x = 3; y = 6;
x <= y menghasilkan True.
d. >= atau operator.ge (greater than or equal to)
o Menjalankan perbandingan apakah operand pertama lebih besar atau sama
dengan operand kedua.
o x = 4; y = 3;
x >= y menghasilkan True.
e. == atau operator.eq (equal to)
o Menjalankan perbandingan apakah operand pertama sama dengan operand
kedua.
o x = 2; y = 2;
x == y menghasilkan True.
o x = 'str'; y = 'stR';
x == y menghasilkan False.
o x = 'str'; y = 'str';
x == y menghasilkan True.
f. != atau operator.ne (not equal to)
o Menjalankan perbandingan apakah operand pertama tidak sama dengan
operand kedua.
o x = 2; y = 3;
x != y returns True.
Penggunaan le, lt, gt, ge, eq, ne
1. from operator import *
2. a = 1
3. b = 5.0
4. print('a = {}'.format(a))
5. print('b = {}'.format(b))
6. for func in (lt, le, eq, ne, ge, gt):
7. print ('{}(a, b): {}'.format(func.__name__, func(a, b)))
Output:
??
Boolean Operator
a. not (boolean NOT)
o Jika x bernilai True, fungsi akan mengembalikan nilai False.
o Jika x bernilai False, fungsi akan mengembalikan nilai True.
o x = True;
not x akan mengembalikan nilai False.
b. and (boolean AND)
o x AND y akan mengembalikan nilai False jika x bernilai False, atau fungsi
akan mengembalikan nilai y.
o x = False; y = True;
x AND y, Fungsi akan mengembalikan nilai False karena x bernilai False.
Dalam kasus ini, Python tidak akan mengevaluasi nilai y karena apapun
nilai y tidak akan mempengaruhi hasil. Hal ini dinamakan short-circuit
evaluation.
c. or (boolean OR)
o x OR y, Jika x bernilai True, fungsi akan mengembalikan nilai True, atau
fungsi akan mengembalikan nilai dari y.
o x = True; y = False;
x OR y, fungsi akan mengembalikan nilai True.
Dalam kasus ini, Python juga menggunakan short-circuit evaluation karena
apapun nilai y tidak akan mempengaruhi hasil.
Cara singkat menuliskan operasi
Jika kita melakukan assignment kembali hasil sebuah expression, beberapa di
antaranya bisa disingkat sebagai berikut:
1. a = 2
2. a = a * 3
Operator Description
lambda Lambda expression
if - else Conditional expression
or Boolean OR
and Boolean AND
not x Boolean NOT
in, not in, is, is not, <, <=, >, >=, !=, == Comparisons, including membership tests
and identity tests
| Bitwise OR
^ Bitwise XOR
& Bitwise AND
<<, >> Shifts
+, - Addition and subtraction
*, @, /, //, % Multiplication, matrix multiplication,
division, floor division, remainder
+x, -x, ~x Positive, negative, bitwise NOT
** Exponentiation
await x Await expression
x[index], x[index:index], x(arguments...), Subscription, slicing, call, attribute
x.attribute reference
(expressions...), [expressions...], {key: Binding or tuple display, list display,
value...},{expressions...} dictionary display, set display
TUGAS PRAKTIKUM :
Praktekkan source code berikut dan jelaskan hasil output serta analisis pro-
gram :
Source code 1 :
1. feeling = input('How are you?')
2. if feeling.lower() == 'great':
3. print('I feel great too.')
4. else:
5. print('I hope the rest of your day is good.')
Source code 2 :
1. m = ['Alice', 'ants', 'Bob', 'badgers', 'Carol', 'cats']
2. m.sort()
3. m
4. spam = ['a', 'z', 'A', 'Z']
5. spam.sort(key=str.lower)
6. spam
Source code 3:
1. from operator import *
2. a = 1
3. b = 5.0
4. print('a = {}'.format(a))
5. print('b = {}'.format(b))
6. for func in (lt, le, eq, ne, ge, gt):
7. print ('{}(a, b): {}'.format(func.__name__, func(a, b)))
Source code 4 :
>>> str = "Py'thon"
>>> str
>>> str2 = 'Py"thon'
>>> str2
>>> "\"OK, \" sampai ketemu lagi."
>>> teks = "Python adalah bahasa pemrograman yang powerfull.\nTerbukti
Python bisa dijalankan di segala platform OS.\nJadi, saatnya kita menggunakan
Python sebagai bahasa permrograman \nsehari-hari. Salam Python Dahsyat!"
>>> print(teks)
>>> kata = """Python adalah bahasa pemrograman yang powerfull.
... Terbukti Python bisa dijalankan di segala platform OS.
... Jadi, saatnya kita menggunakan Python sebagai bahasa pemrograman
... sehari-hari. Salam Python Dahsyat!"""
>>> print(kata)
Source code 5 :
Source code 7 :
1. z = [1, 3, 2, 4, 'Alice', 'Bob']
2. z.sort()
3.
4. print("Hello there!\nHow are you?\nI\'m doing fine.")
5.
6. multi_line = """Hello there!
7. How are you?
8. I'm fine."""
9. print(multi_line)
10.
11. spam = ' Hello World '
12. spam.strip()
13. spam.lstrip()
14. spam.rstrip()
15.
16. ', '.join(['cats', 'rats', 'bats'])
17. ' '.join(['My', 'name', 'is', 'Simon'])
18. 'ABC'.join(['My', 'name', 'is', 'Simon'])
19. 'My name is Simon'.split()
20. 'MyABCnameABCisABCSimon'.split('ABC')
21. 'My name is Simon'.split('m')
Source code 8 :
1. 'Hello world!'.startswith('Hello')
2. 'Hello world!'.endswith('world!')
3. 'abc123'.startswith('abcdef')
4. 'abc123'.endswith('12')
5. 'Hello world!'.startswith('Hello world!')
6. 'Hello world!'.endswith('Hello world!')
7.
8. 'Hello'.rjust(10)
9. 'Hello'.rjust(20)
10. 'Hello World'.rjust(20)
11.'Hello'.ljust(10)
12. 'Hello'.rjust(20, '*')
13. 'Hello'.ljust(20, '-')
14. 'Hello'.center(20)
15. 'Hello'.center(20, '=')