Python mendukung dua tipe dasar, yaitu, teks dan numerik. Tipe data tesk dapat di klasifikasikan sebagai karakter tunggual atau kumpulan karakter (string), sedangkan tipe numerik di klasifikasikan menjadi tipe bilangan bulat. bilangn rill, dan bilangan kompleks.
Tipe String
Dalam python, string di representasikan dengan tipe str dan merupakan kumpulan karakter Unicode. String dapat di buat menggunakan tanda petik tunggal, ganda, maupun triple (petik tunggal atau ganda yang di tulis tiga kali).
Contoh:
str1 = 'ini string yang di gunakan untuk petik tunggal'
str2 = "ini adalah string yang di gunakan untuk petik ganda"
str3 = """ ini adalah string panjang yang di tulis menggunakan tanda petik sebanyak tiga kali.
jinis string ini digunakan untuk teks yang terdiri dari beberapa baris"""
Ketiga penggunaan string di atas di anggap legal di dalam python.
def main():
# membuat string
s1 = 'string pertama'
s2 = "string kedua"
# menampilkan string
print(s1)
print(s2)
if __name__ == "__main__":
main()
Hasil program:
string pertama
string kedua
Sama seperti bahasa C/C++, Python juga mengijinkan kita untuk menggunakan karakter escape sequance di dalam string, Karakter escape sequance adalah kumpulan karakter yang di awali oleh karakter backslash ('\'). Meskipun terdiri dari beberapa karakter namun escape sequance akan selalu di anggap sebagai karakter tunggal. Tabel di bawah ini menunjukan beberapa escape sequance yang sering di gunakan di dalam pemrograman Python.
Escape Sequence | Keterangan |
---|---|
\\ | Backslash(\) |
\' | Petik Tunggal |
\" | Petik Ganda |
\n | ASCII linefeed(lf) |
\r | ASCII carrige return(CR) |
\ooo | Bilangan oktal (basis 8) |
\xhh | Bilangan hexadesimal (basil 16) |
\t | ASCII tab (TAB) |
\v | ASCII vertical tab (VT) |
Berikut adalah contoh code yang menunjukan penggunaan beberapa escape sequance.
def main():
s1 = 'Petik tunggal \'escape\', petik ganda "OK"'
s2 = "Petik tunggal 'OK', petik ganda \"escape\""
s3 = "Baris pertama\nBaris kedua"
print(s1)
print(s2)
print(s3)
if __name__ == "__main__":
main()
Hasil program:
Petik tunggal 'escape', petik ganda "OK"
Petik tunggal 'OK', petik ganda "escape"
Baris pertama
Baris kedua
Ketika kita ingin menuliskan tanda petik tunggul di dalam string yang di buat menggunakan petik tunggal, kita harus menggunakan escape sequence. Untuk petik ganda bisa langsung di masukan ke dalam string tersebut. Demikian juga jika string dibuat oleh petik ganda, petik ganda yang di tampilkan di dalam string harus di awali backslash sedangkan petik tunggal bisa langsung di tuliskan ke dalam string. Karakter \n diatas berguna untuk membuat baris baru.
Pada beberapa kasus kita justru ingin mengabaikan kehadiran escape squance di dalam string sebagai contoh, perhatikan kode berikut.
>> print("C:\new\test")
C:
ew est
Baris kode di atas akan memberikan hasil yang tidak di harapkan Permasalahan yang terjadi di karenakan \n akan di perlakukan sebagai garis baru dan karakter \t di perlakukan sebagai tab. Untuk mengatasi permasalahan ini kita perlu menulis tanda backslash dua kali, seperti berikut:
>> print("C:\\new\\test")
C:\new\test
Cara lain yang lebih sederhana adalah dengan membuat raw string yaitu string yang mengabaikan kehadiran karakter escape sequance. Artinya karakter escape seequance tidak akan di proses di dalam raw string sehingga string akan di tampilkan apa adanya. Untuk membuat string jenis ini, kita perlu memberi huruf r di depan string seperti berikut:
>> print(r"C:\new\test")
C:\new\test
Meskipun pada contoh di atas kita hanya menggunakan tanda backslash satu kali di dalam string, tapi karakter '\n' dan '\t' tidak di perlakukan sebagai escape sequance.
Membandingkan String
Dua buah string dapat di bandingkan menggunakan operator relasional <, <=, ==, =>, > dan >= Berikut ini contoh kode sederhana yang menunjukan proses perbandingan string .
def main():
s1 = "Python"
s2 = "Python"
print("s1: " + s1)
print("s2: " + s2)
if s1 == s2:
print("s1 sama dengan s2")
else:
print("s1 tidak sama dengan s2")
if __name__ == "__main__":
main()
Hasil program
s1: Python
s2: Python
s1 sama dengan s2
Pada contoh kode di atas kita menggunakan operator == ( tanda "sama dengan yang di tulis dua kali" ) untuk memeriksa apakah string s1 sama dengan string s2 atau tidak.
Mengambil Substring
Cara mengambil bagian string di dalam string dinamakan substring dilakukan menggunakan tanda bracket ([]). Kita dapat mengambil satu atau beberapa karakter dari string dengan cara menyertakan indeks atau posisi dari karakter bersangkutan.
Hal pertama yang perlu anda ketahui sebelum melakukan ekstraksi substring adalah penentuan indeksnya, Dalam Python, string dapat di indeks melalui dua arah. Indeks string di awali dari 0 (untuk arah dari kiri ke kanan) atau -1 (untuk arah dari kanan ke kiri).
def main():
s = "Python"
print(s[0])
print(s[1])
print(s[-4])
print(s[:2])
print(s[2:])
print(s[1:4])
print(s[2:5])
if __name__ == "__main__":
main()
Hasil program:
P
y
t
Py
thon
yth
tho
Tipe Numerik
Untuk melakukan operasi numerik, Python mendukung tiga tipe bilangan, yaitu: integer, floating point, dan bilangan kompleks. Ingat! semua bilangan di dalam python merupakan objek yang tidak dapat di ubah atau bersifat immutable. Ini berarti setiap operasi perhitungan terhadap bilangan, kita akan selalu memperoleh objek bilangan yang baru sebagai hasilnya.
Tipe integer dapat berupa bilangan biner (basis 2), desimal (basis 10), oktal (basis 8), dan hexadesimal (basis 16). Nilai yang di tulis dalam notasi biner di tandai dengan awalan 0b (angka 0 yang di ikuti dengan huruf b), oktal dengan awalan 0o (angka yang di ikuti dengan huruf o), dan hexadesimal dengan awalan 0x (angka 0 yang di ikuti dengan huruf x).
Contoh:
0b1, 0b10111 # biner
1, 23 #desimal
0o1, 0o27 #oktal
0x1, 0x17 #hexadesimal
Huruf b, o dan x juga dapat di tulis dalam hururf kapital: B, O, dan X. Contoh kode di bawah ini menunjukan hal tersebut.
>>> binner = 0b10111
>>> binner
23
>>> oktal = 0o27
>>> oktal
23
>>> hexadesimal = 0x17
>>> hexadesimal
23
>>>
Bilangan kompleks tersusun atas dua bilangan pecahan: bagian-rill + bagian-imaginer, dan di akhiri oleh huruf J atau j. Dalam disiplin ilmu lain, bilangan kompleks saling di tandai dengan huruf i di belakangnya. Masing-masing bagian dari bilangan kompleks dapat di ambiln melalui atribut real dan imag.
Contoh:
>>> z = 4.1+2j
>>> print(z.real)
4.1
>>> print(z.imag)
2.0
>>>
Pada contoh di atas 4.1 adalah bagian rillnya dan 2.0 adalah bagian imaginernya.
Tipe Boolean
Sebelum Python 2.3, Python tidak memiliki tipe khusus yang menangani nilai logika (benar/salah). Saat itu, nilai benar hanya di representasikan dengan nilai selain nol atau dengan string, tuple, list, maupun dictionary yang tidak kosong. Nilai salah direpresentasikan dengan nilai nol atau dengan string, tuple, list, maupun dictionary kosong.
Pada versi 2.3 dikenalkan tipe baru yaitu bool, yang sebenarnya merupakan subkelas tipe int (integer). Nilai dari tipe ini adalah True (benar) dan False (salah).
Contoh:
>>> t = True
>>> f = False
>>> print(t and f)
False
>>> print(t or f)
True
>>> type(t)