Python 3 - Değişken Türler
Değişkenler, değerleri saklamak için ayrılmış bellek konumlarından başka bir şey değildir. Bu, bir değişken oluşturduğunuzda hafızada biraz yer ayırdığınız anlamına gelir.
Bir değişkenin veri türüne bağlı olarak, yorumlayıcı belleği ayırır ve ayrılmış bellekte nelerin saklanabileceğine karar verir. Bu nedenle, değişkenlere farklı veri türleri atayarak, bu değişkenlerde tamsayılar, ondalık sayılar veya karakterler saklayabilirsiniz.
Değişkenlere Değer Atama
Python değişkenlerinin bellek alanı ayırmak için açık bildirime ihtiyacı yoktur. Bir değişkene bir değer atadığınızda bildirim otomatik olarak gerçekleşir. Eşittir işareti (=) değişkenlere değer atamak için kullanılır.
= Operatörünün solundaki işlenen, değişkenin adıdır ve = operatörünün sağındaki işlenen, değişkende depolanan değerdir. Örneğin -
#!/usr/bin/python3
counter = 100 # An integer assignment
miles = 1000.0 # A floating point
name = "John" # A string
print (counter)
print (miles)
print (name)
Burada 100, 1000.0 ve "John" sırasıyla counter, miles ve name değişkenlerine atanan değerlerdir. Bu, aşağıdaki sonucu verir -
100
1000.0
John
Çoklu Atama
Python, aynı anda birkaç değişkene tek bir değer atamanıza izin verir.
Örneğin -
a = b = c = 1
Burada, 1 değeriyle bir tamsayı nesnesi oluşturulur ve üç değişkenin tümü aynı bellek konumuna atanır. Ayrıca birden çok değişkene birden çok nesne atayabilirsiniz. Örneğin -
a, b, c = 1, 2, "john"
Burada, 1 ve 2 değerlerine sahip iki tamsayı nesnesi, sırasıyla a ve b değişkenlerine atanır ve c değişkenine "john" değerine sahip bir dize nesnesi atanır.
Standart Veri Türleri
Hafızada saklanan veriler birçok türde olabilir. Örneğin, bir kişinin yaşı sayısal bir değer olarak ve adresi alfanümerik karakterler olarak saklanır. Python, üzerlerinde olası işlemleri ve her biri için depolama yöntemini tanımlamak için kullanılan çeşitli standart veri türlerine sahiptir.
Python'da beş standart veri türü vardır -
- Numbers
- String
- List
- Tuple
- Dictionary
Python Numaraları
Sayı veri türleri sayısal değerleri depolar. Sayı nesneleri, onlara bir değer atadığınızda oluşturulur. Örneğin -
var1 = 1
var2 = 10
Ayrıca, bir sayı nesnesine olan başvuruyu, delBeyan. Sözdizimidel ifade -
del var1[,var2[,var3[....,varN]]]]
Tek bir nesneyi veya birden çok nesneyi silebilirsiniz. del Beyan.
Örneğin -
del var
del var_a, var_b
Python, üç farklı sayısal türü destekler -
- int (işaretli tamsayılar)
- float (kayan nokta gerçek değerleri)
- karmaşık (karmaşık sayılar)
Python3'teki tüm tamsayılar uzun tamsayılar olarak temsil edilir. Dolayısıyla, uzun süre ayrı bir numara türü yoktur.
Örnekler
İşte bazı sayı örnekleri -
int | yüzen | karmaşık |
---|---|---|
10 | 0.0 | 3.14j |
100 | 15.20 | 45.j |
-786 | -21.9 | 9.322e-36j |
080 | 32.3 + e18 | .876j |
-0490 | -90. | -.6545 + 0J |
-0x260 | -32.54e100 | 3e + 26J |
0x69 | 70.2-E12 | 4.53e-7j |
Karmaşık bir sayı, x + yj ile gösterilen sıralı bir gerçek kayan noktalı sayı çiftinden oluşur; burada x ve y gerçek sayılardır ve j hayali birimdir.
Python Dizeleri
Python'daki dizeler, tırnak işaretleri içinde gösterilen bitişik bir karakter kümesi olarak tanımlanır. Python, tek veya çift tırnağa izin verir. Dizelerin alt kümeleri, dizinin başlangıcında 0'dan başlayan ve -1'den sonuna kadar giden dizinler ile dilim operatörü ([] ve [:]) kullanılarak alınabilir.
Artı (+) işareti, dize birleştirme operatörü ve yıldız işareti (*), tekrar operatörüdür. Örneğin -
#!/usr/bin/python3
str = 'Hello World!'
print (str) # Prints complete string
print (str[0]) # Prints first character of the string
print (str[2:5]) # Prints characters starting from 3rd to 5th
print (str[2:]) # Prints string starting from 3rd character
print (str * 2) # Prints string two times
print (str + "TEST") # Prints concatenated string
Bu, aşağıdaki sonucu verecektir -
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST
Python Listeleri
Listeler, Python'un bileşik veri türlerinin en çok yönlü olanıdır. Bir liste, virgülle ayrılmış ve köşeli parantez ([]) içine alınmış öğeler içerir. Listeler bir dereceye kadar C'deki dizilere benzer. Aralarındaki farklardan biri, bir listeye ait tüm öğelerin farklı veri türünde olabilmesidir.
Bir listede saklanan değerlere, listenin başında 0'dan başlayan dizinler ile dilim operatörü ([] ve [:]) kullanılarak ve -1'in sonuna kadar kendi yollarına çalışılarak erişilebilir. Artı (+) işareti liste birleştirme operatörüdür ve yıldız işareti (*) tekrar operatörüdür. Örneğin -
#!/usr/bin/python3
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print (list) # Prints complete list
print (list[0]) # Prints first element of the list
print (list[1:3]) # Prints elements starting from 2nd till 3rd
print (list[2:]) # Prints elements starting from 3rd element
print (tinylist * 2) # Prints list two times
print (list + tinylist) # Prints concatenated lists
Bu, aşağıdaki sonucu verir -
['abcd', 786, 2.23, 'john', 70.200000000000003]
abcd
[786, 2.23]
[2.23, 'john', 70.200000000000003]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john']
Python Tuples
Tuple, listeye benzer başka bir dizi veri türüdür. Bir demet, virgülle ayrılan birkaç değerden oluşur. Listelerden farklı olarak, başlıklar parantez içine alınır.
Listeler ve tuplelar arasındaki temel fark şudur: - Listeler parantez ([]) içine alınır ve elemanları ve boyutları değiştirilebilirken, başlıklar parantez (()) içine alınır ve güncellenemez. Tuples şu şekilde düşünülebilir:read-onlylisteler. Örneğin -
#!/usr/bin/python3
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
print (tuple) # Prints complete tuple
print (tuple[0]) # Prints first element of the tuple
print (tuple[1:3]) # Prints elements starting from 2nd till 3rd
print (tuple[2:]) # Prints elements starting from 3rd element
print (tinytuple * 2) # Prints tuple two times
print (tuple + tinytuple) # Prints concatenated tuple
Bu, aşağıdaki sonucu verir -
('abcd', 786, 2.23, 'john', 70.200000000000003)
abcd
(786, 2.23)
(2.23, 'john', 70.200000000000003)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john')
Aşağıdaki kod, tuple ile geçersiz, çünkü izin verilmeyen bir demeti güncellemeye çalıştık. Listelerde de benzer durum mümkündür -
#!/usr/bin/python3
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tuple[2] = 1000 # Invalid syntax with tuple
list[2] = 1000 # Valid syntax with list
Python Sözlüğü
Python'un sözlükleri bir tür karma tablo türüdür. Perl'de bulunan ilişkilendirilebilir diziler veya karmalar gibi çalışırlar ve anahtar-değer çiftlerinden oluşurlar. Sözlük anahtarı hemen hemen her Python türü olabilir, ancak genellikle sayılar veya dizelerdir. Öte yandan değerler, rastgele herhangi bir Python nesnesi olabilir.
Sözlükler küme parantezleri ({}) içine alınır ve değerler, köşeli parantezler ([]) kullanılarak atanabilir ve erişilebilir. Örneğin -
#!/usr/bin/python3
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print (dict['one']) # Prints value for 'one' key
print (dict[2]) # Prints value for 2 key
print (tinydict) # Prints complete dictionary
print (tinydict.keys()) # Prints all the keys
print (tinydict.values()) # Prints all the values
Bu, aşağıdaki sonucu verir -
This is one
This is two
{'name': 'john', 'dept': 'sales', 'code': 6734}
dict_keys(['name', 'dept', 'code'])
dict_values(['john', 'sales', 6734])
Sözlüklerin unsurları arasında düzen kavramı yoktur. Elemanların "sıra dışı" olduğunu söylemek yanlıştır; onlar sırasızdır.
Veri Türü Dönüşümü
Bazen yerleşik türler arasında dönüştürme yapmanız gerekebilir. Türler arasında dönüştürme yapmak için, tür adlarını bir işlev olarak kullanmanız yeterlidir.
Bir veri türünden diğerine dönüştürme gerçekleştirmek için birçok yerleşik işlev vardır. Bu işlevler, dönüştürülen değeri temsil eden yeni bir nesne döndürür.
Sr.No. | İşlev ve Açıklama |
---|---|
1 | int(x [,base]) X'i bir tam sayıya dönüştürür. Taban, x bir dizge ise tabanı belirtir. |
2 | float(x) X'i kayan noktalı sayıya dönüştürür. |
3 | complex(real [,imag]) Karmaşık bir sayı oluşturur. |
4 | str(x) X nesnesini bir dizgi gösterimine dönüştürür. |
5 | repr(x) X nesnesini bir ifade dizesine dönüştürür. |
6 | eval(str) Bir dizeyi değerlendirir ve bir nesne döndürür. |
7 | tuple(s) S'yi bir demete dönüştürür. |
8 | list(s) S'yi bir listeye dönüştürür. |
9 | set(s) S'yi bir kümeye dönüştürür. |
10 | dict(d) Bir sözlük oluşturur. d bir (anahtar, değer) tuple dizisi olmalıdır. |
11 | frozenset(s) S'yi donmuş bir kümeye dönüştürür. |
12 | chr(x) Bir tamsayıyı bir karaktere dönüştürür. |
13 | unichr(x) Bir tamsayıyı Unicode karakterine dönüştürür. |
14 | ord(x) Tek bir karakteri tam sayı değerine dönüştürür. |
15 | hex(x) Bir tamsayıyı onaltılık bir dizeye dönüştürür. |
16 | oct(x) Bir tamsayıyı sekizlik bir dizeye dönüştürür. |