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.