Standart Veri Tipleri
Programların çalışmasında farklı amaçlar için farklı türlerde verilere ihtiyaç duyarız. Örneğin askerlik durumu için true/false, isim için string yada yaş bilgisi için int türünde verir.
Python ile standart olarak gelen 5 tane veri türü ve depolama kapasiteleri aşağıdaki gibidir.
- Number
- String
- List
- Tuple
- Dictionary
Python Number
Sayısal veri türüdür. Bir sayı ataması yapıldığında oluşturulur.
1 2 3 4 |
var1 = 1 var2 = 10 |
Python aşağıdaki 4 sayı tipini destekler
int (işaretli tamsayı)
long (uzun tamsayı, octal ve hexadecimal olarak da kullanılabilir)
float (ondalıklı sayı)
complex (karmaşık sayılar)
int | long | float | complex |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32.3+e18 | .876j |
-0490 | 535633629843L | -90. | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
Python String
Python’da dizgeler tırnak işaretleri ile bitişik karakter kümesi olarak gösterilmektedir. Python’da string tanımlamak için tek yada çift tırnak kullanılabilir. Dizgelerin alt dilimlerini almak için [] ve [:] ifadeleri kullanarak ayırmak mümkündür.
1 2 3 4 5 6 7 8 9 10 11 12 |
#!/usr/bin/python yazi = 'www.yazilimbilisim.net ' print (yazi) # Tüm metni yazdırma print (yazi[0]) # İlk karakteri yazma print (yazi[4:18]) # 5-18 karakterler arasını yazdırır. print (yazi[4:]) # 5. karakterden sonrasını yazdırır print (yazi * 2) # Metni iki sefer yazdırır print ("https://"+yazi) # Metni birleştirir |
Çıktı:
1 2 3 4 5 6 7 8 |
www.yazilimbilisim.net w yazilimbilisim yazilimbilisim.net www.yazilimbilisim.net www.yazilimbilisim.net https://www.yazilimbilisim.net |
Python List
Python’un bileşik veri tiplerinin en çok yönlü olanlarıdır. Bir liste, virgülle ayrılmış ve köşeli parantez içine alınmış öğeler içerir ([]). Bir dereceye kadar, listeler C’deki dizilere benzerdir. C’deki yapıdan farklı ise tüm öğler farklı veri tiplerine sahip olabilir.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/usr/bin/python liste = [ 'yazilim', 100 , 3.14, 'Ahmet', 49.9 ] yeniListe = [1001, 'Hayri'] print (liste) # Tüm listeyi yazdır print (liste[0]) # İlk nesneyi yazdır print (liste[1:3]) # ikinci değerden 3 değere kadar olanları yazdır print (liste[2:]) # ikinci değerden sonrasını yazdır print (yeniListe * 2) # Prints list two times print (liste + yeniListe) # Listeleri birleştirip yazdır |
Çıktı
1 2 3 4 5 6 7 8 |
['yazilim', 100, 3.14, 'Ahmet', 49.9] yazilim [100, 3.14] [3.14, 'Ahmet', 49.9] [1001, 'Hayri', 1001, 'Hayri'] ['yazilim', 100, 3.14, 'Ahmet', 49.9, 1001, 'Hayri'] |
Python Tuple
Bu tip listeye benzer bir dizi veri türüdür. Programlama dillerindeki klasik diziler gibidir. Listelerden farklı olarak parantezler () ile oluşturulur. Ayrıca Tuple sadece read-only (okunabilir) olarak oluşturulur.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/usr/bin/python liste = ('yazilim', 100 , 3.14, 'Ahmet', 49.9 ) yeniListe = (1001, 'Hayri') print (liste) # Tüm listeyi yazdır print (liste[0]) # İlk nesneyi yazdır print (liste[1:3]) # ikinci değerden 3 değere kadar olanları yazdır print (liste[2:]) # ikinci değerden sonrasını yazdır print (yeniListe * 2) # Prints list two times print (liste + yeniListe) # Listeleri birleştirip yazdır |
Çıktı
1 2 3 4 5 6 7 8 |
('yazilim', 100, 3.14, 'Ahmet', 49.9) yazilim (100, 3.14) (3.14, 'Ahmet', 49.9) (1001, 'Hayri', 1001, 'Hayri') ('yazilim', 100, 3.14, 'Ahmet', 49.9, 1001, 'Hayri') |
NOT: List olarak oluşturulan diziler değiştirilebilirken, tuple olarak oluşturulan dizilerde değişiklik yapılamaz.
Python Dictionary
Python’un sözlükleri bir çeşit karma tablo türüdür. Anahtar-değer çiftlerinden oluşan ilişkisel diziler ya da karmalar gibi çalışırlar. Bir sözlük anahtarı hemen hemen her Python tipi olabilir, ancak genellikle sayılar veya dizelerdir. Diğer taraftan değerler, herhangi bir rasgele Python nesnesi olabilir.
Sözlükler küme parantezleri ({}) ile çevrelenir ve değerler köşeli parantezler ([]) kullanılarak atanabilir ve erişilebilir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#!/usr/bin/python dictTip = {} dictTip['ad'] = "Hüseyin" dictTip[2] = "Recep" #hash table şeklinde yazımı dictOrnek = {'ad': 'Ufuk','yas':32, 'meslek': 'Serbest'} print (dictTip['ad']) # Prints value for 'one' key print (dictTip[2]) # Prints value for 2 key print (dictOrnek) # Prints complete dictionary print (dictOrnek.keys()) # Prints all the keys print (dictOrnek.values()) # Prints all the values |
Çıktı
1 2 3 4 5 6 7 |
Hüseyin Recep {'ad': 'Ufuk', 'yas': 32, 'meslek': 'Serbest'} dict_keys(['ad', 'yas', 'meslek']) dict_values(['Ufuk', 32, 'Serbest']) |
Python Tür Dönüşümü
Fonksiyon ve Tanım |
---|
int(a [,taban])
a değişkenini belirtilen taban türüne çevirir. |
long(a [,taban] )
a değişkeninin belirtilen taban türüne dönüştürür. |
float(a)
a değişkenini ondalıklı türe çevirir. |
complex(real [,imag])
Kompleks sayıya çevirir. |
str(a)
a değişkenini string türüne çevirir. |
repr(a)
Bir a nesnesinin yazdırılabilir bir temsilini içeren bir dizgi döndürür. |
eval(str)
String dizgesinden bir nesne döndürür. |
tuple(a)
a değişkenini tuple türüne çevirir. |
list(a)
a değişkenini list türüne çevirir. |
set(s)
s nesnesini ayar nesnesine çevirir. |
dict(d)
d nesnesini dictionary nesnesine çevirir. d (key,value) tipinde olmalıdır. |
frozenset(s)
s nesnesini frozenset nesnesine çevirir. |
chr(x)
tamsayıyı karaktere çevirir. |
unichr(x)
tam sayıyı unicode olarak dönüştürür. |
ord(x)
Tek karakteri tam sayıya çevirir. |
hex(x)
Tam sayıyı hexadecimal değere çevirir. |
oct(x)
Tam sayıyı oktal değere çevirir. |
Kaynak
https://docs.python.org/2/library/functions.html#built-in-functions
https://www.tutorialspoint.com/python/python_variable_types.htm
https://www.w3resource.com/python/python-data-type.php