0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan25 halaman

Tipe Data, If Then Else, Loop Di Python

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan25 halaman

Tipe Data, If Then Else, Loop Di Python

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PPTX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 25

Tipe data, if then else, loop

diPYTHON
Ridho Rahman Hariadi, S.Kom, M.Sc
List
Sebuah tipe data compound:
[0]
[2.3, 4.5]
[5, "Hello", "there", 9.8]
[]
Gunakan len() untuk mendapatkan jumlah elemen list
>>> names = [“Ben", “Chen", “Yaqin"]
>>> len(names)
3
Gunakan [ ] untuk mengakses
elemen di dalam list
>>> names[0]
‘Ben' [0] adalah elemen pertama
>>> names[1] [1] adalah elemen kedua
‘Chen' ...
>>> names[2]
‘Yaqin' Nilai index lebih besar dari
>>> names[3] jumlah elemen menimbulkan
Traceback (most recent call last): exception
File "<stdin>", line 1, in <module>
IndexError: list index out of range
>>> names[-1]
Nilai negatif
‘Yaqin'
dihitung dari elemen terakhir.
>>> names[-2]
‘Chen'
>>> names[-3]
‘Ben'
String memiliki beberapa fitur yang mirip dengan list
>>> smiles = "C(=N)(N)N.C(=O)(O)O"
>>> smiles[0]
'C'
>>> smiles[1]
'('
>>> smiles[-1]
'O' Gunakan notasi “slice” untuk
>>> smiles[1:5] mendapatkan substring
'(=N)'
>>> smiles[10:-4]
'C(=O)'
Fungsi “find”, “split” dalam string
smiles = "C(=N)(N)N.C(=O)(O)O"
>>> smiles.find("(O)")
15
>>> smiles.find(".") Gunakan “find” untuk mencari
awal dari sebuah substring.
9
>>> smiles.find(".", 10) Mulai mencari pada posisi 10.
-1
Fungsi find mengembalikan nilai -1 jika tidak
>>> smiles.split(".") Menemukan substring yang dicari.
['C(=N)(N)N', 'C(=O)(O)O']
>>> Fungsi split memecah string menjadi
bagian-bagian dengan “.” sebagai pemisahnya.
Operator “in”, “not in” dalam string
if "Br" in “Brother”:
print("contains brother“)

email_address = “clin”
if "@" not in email_address:
email_address += "@brandeis.edu“
Fungsi “strip”, “rstrip”, “lstrip” untuk menghapus
karakter
>>> line = " # This is a comment line \n"
>>> line.strip()
'# This is a comment line'
>>> line.rstrip()
' # This is a comment line'
>>> line.rstrip("\n")
' # This is a comment line '
>>>
Fungsi string lainnya
>>> email.startswith(“c")
>>> email.endswith(“u”)
True/False

>>> "%[email protected]" % "clin"


'[email protected]'

>>> names = [“Ben", “Chen", “Yaqin"]


>>> ", ".join(names)
‘Ben, Chen, Yaqin‘

>>> “chen".upper()
‘CHEN'
Karakteristik string
>>> s = "andrew" String tidak dapat diubah
>>> s[0] = "A"
(read only)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment
>>> s = "A" + s[1:]
>>> s
'Andrew‘
Gunakan “\” untuk karakter spesial
\n -> newline
\t -> tab
\\ -> backslash
...
Jangan lupa bahwa Windows menggunakan backslash untuk directory!
filename = "M:\nickel_project\reactive.smi" # Jangan gunakan ini!
filename = "M:\\nickel_project\\reactive.smi" # Lebih baik gunakan ini!
filename = "M:/nickel_project/reactive.smi" # Biasanya ini juga dapat digunakan
Beberapa fungsi dalam list
>>> ids = ["9pti", "2plv", "1crn"]
>>> ids.append("1alm") Menambah elemen
>>> ids
['9pti', '2plv', '1crn', '1alm']
>>>ids.extend(L)
>>> del ids[0]
>>> ids
Menghapus elemen
['2plv', '1crn', '1alm']
>>> ids.sort()
>>> ids
Mengurutkan elemen
['1alm', '1crn', '2plv']
>>> ids.reverse()
>>> ids
Membalik elemen
['2plv', '1crn', '1alm']
>>> ids.insert(0, "9pti")
>>> ids
Menyisipkan elemen
['9pti', '2plv', '1crn', '1alm']
Tuples: semacam list yang bersifat immutable
>>> yellow = (255, 255, 0) # r, g, b
>>> one = (1,)
>>> yellow[0]
>>> yellow[1:]
(255, 0)
>>> yellow[0] = 0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

>>> "%s lives in %s at latitude %.1f" % ("Andrew", "Sweden", 57.7056)


'Andrew lives in Sweden at latitude 57.7'
Menggabungkan list
>>> names
['ben', 'chen', 'yaqin']

>>> gender = [0, 0, 1]

>>> zip(names, gender)


[('ben', 0), ('chen', 0), ('yaqin', 1)]
Dictionary
 Dictionary adalah lookup tables.
 Mereka memetakan dari “key” menjadi “value”.
symbol_to_name = {
"H": "hydrogen",
"He": "helium",
"Li": "lithium",
"C": "carbon",
"O": "oxygen",
"N": "nitrogen"
}
 Key tidak boleh ada yang sama
 Value boleh sama
Dictionary
>>> symbol_to_name["C"] Mendapatkan value dari key
'carbon'
>>> "O" in symbol_to_name, "U" in symbol_to_name
(True, False)
Mengecek apakah key tsb exist
>>> "oxygen" in symbol_to_name
False
>>> symbol_to_name["P"] Penggunaan [] yang gagal akan
Traceback (most recent call last): menimbulkan exception.
File "<stdin>", line 1, in <module>
KeyError: 'P'
>>> symbol_to_name.get("P", "unknown")
Penggunaan “.get()” tidak akan
'unknown' Menimbulkan exception.
>>> symbol_to_name.get("C", "unknown")
'carbon'
Fungsi dictionary lainnya
>>> symbol_to_name.keys()
['C', 'H', 'O', 'N', 'Li', 'He']

>>> symbol_to_name.values()
['carbon', 'hydrogen', 'oxygen', 'nitrogen', 'lithium', 'helium']

>>> symbol_to_name.update( {"P": "phosphorous", "S": "sulfur"} )


>>> symbol_to_name.items()
[('C', 'carbon'), ('H', 'hydrogen'), ('O', 'oxygen'), ('N', 'nitrogen'), ('P', 'phosphorous'),
('S', 'sulfur'), ('Li', 'lithium'), ('He', 'helium')]

>>> del symbol_to_name['C']


>>> symbol_to_name
{'H': 'hydrogen', 'O': 'oxygen', 'N': 'nitrogen', 'Li': 'lithium', 'He': 'helium'}
True dan False
Variabel yang bernilai False
 False (boolean)
 0 (integer), 0.0 (float), 0j (complex).
 “” (string).
 [] (list), {} (dictionary), () (set).

Variabel yang bernilai True


 True (boolean)
 Selain angka 0.
 Selain string kosong “”.
 Selain struktur data kosong [], {}, ().
If
>>> smiles = "BrC1=CC=C(C=C1)NN.Cl"
>>> bool(smiles)
True
>>> not bool(smiles)
False
>>> if not smiles:
... print("The SMILES string is empty“)
Gunakan “elif” untuk menggabungan tes yang berurutan
>>> mode = "absolute"
>>> if mode == "canonical":
... smiles = "canonical"
... elif mode == "isomeric":
... smiles = "isomeric”
... elif mode == "absolute":
... smiles = "absolute"
... else:
... raise TypeError("unknown mode")
...
>>> smiles
' absolute '
>>>
“raise” digunakan untuk menimbulkan exception
Logika Boolean
Dalam if dapat menggunakan “and” dan “or”:
if (ben <= 5 and chen >= 10 or
chen == 500 and ben != 5):
print(“Ben and Chen“)
Range
if (3 <= Time <= 5):
print(“Office Hour“)
For
>>> names = [“Ben", “Chen", “Yaqin"]
>>> for name in names:
... print(smiles)
...
Ben
Chen
Yaqin
Penggunaan tuple di loop
data = [ ("C20H20O3", 308.371),
("C22H20O2", 316.393),
("C24H40N4O2", 416.6),
("C14H25N5O3", 311.38),
("C15H20O2", 232.3181)]

for (formula, mw) in data:


print("The molecular weight of %s is %s" % (formula, mw))

The molecular weight of C20H20O3 is 308.371


The molecular weight of C22H20O2 is 316.393
The molecular weight of C24H40N4O2 is 416.6
The molecular weight of C14H25N5O3 is 311.38
The molecular weight of C15H20O2 is 232.3181
Break, continue
Checking 3
>>> for value in [3, 1, 4, 1, 5, 9, 2]: The square is 9
... print("Checking", value) Checking 1
Ignoring
... if value > 8: Checking 4
... print("Exiting for loop“) The square is 16
Gunakan “break” untuk Checking 1
... break Keluar dari loop Ignoring
... elif value < 3: Checking 5
Gunakan “continue” untuk The square is 25
... print("Ignoring“) Melanjutkan ke loop berikutnya Checking 9
Exiting for loop
... continue >>>
... print("The square is", value**2)
...
Fungsi range()
 Fungsi “range” menciptakan list angka dengan range tertentu
 Formatnya: range([start,] stop[, step])
 Step adalah increment/decrement-nya
>>> range(5)
[0, 1, 2, 3, 4]
>>> range(5, 10)
[5, 6, 7, 8, 9]
>>> range(0, 10, 2)
[0, 2, 4, 6, 8]

Bagaimana cara melakukan loop setiap increment 2 di list?


for i in range(0, len(data), 2):
print(data[i])

Anda mungkin juga menyukai