Python Değişkenler (Variables)
Değişken, bellekte kendisine bir isim verilen ve bir değeri taşıyan veri yapısıdır. x=15 ifadesi bir atama deyimidir (assignment statement). x değişkeninin bellekteki değeri 15 olarak atanmıştır. Atama deyimi Değişken=İfade şeklinde gerçekleşmektedir. İfadenin değeri hesaplanarak sol taraftaki değişkenin değeri olarak atanır.
Bir değişkene yeni bir değer atanırsa değişkenin önceki değeri ortadan kaldırılır.
>>> x=15
>>> print(x)
15
>>> x=x-5
>>> print(x)
10
Yukarıdaki örnekte x değişkenine 15 değeri atandı ve print fonksiyonu ile x’in değeri yazdırıldı. Daha sonra x=x-5 atama deyimini gördünüz. Bu durumda bilgisayar önce sağ taraftaki ifadenin değerini hesapladı ve bunu sol tarafa X’in yeni değeri olarak atadı. Böylece x’in yeni değeri 15-5=10 olduğu için x’e 10 olarak atandı. print fonksiyonu ile x’in son değeri ekrana yazdırıldığında 10 olduğunu göreceksiniz.
Python Dinamik Tip Oluşturma (Dynamic Typing)
Python dilinde diğer pek çok dilde olduğu gibi değişkenleri kullanmadan önce tip bildiriminde bulunmak zorunluluğu yoktur. Bu açıdan C/C++/C# ve Java ile büyük bir farklılık göstermektedir. Her değişkene atanan veri tipi programın akışı içerisinde değişikliğe uğrayabilmektedir. Özetle dinamik olarak tip atama söz konusudur.
>>> b=30
>>> print(b)
30
>>> b='ankara'
>>> print(b)
ankara
Yukarıda b’ye önce bir tam sayı atanmıştır. Daha sonrasında ise yazı değeri atanmıştır. Bu pek çok dilde mümkün olmamasına rağmen Python’un güzel bir özelliğidir.
Bir değişkenin 3 temel özelliği mevcuttur:
- Tipi ya da türü (type)
- Değeri (value)
- Bellekteki adresi (location)
Değişkenin tipi type() fonksitonu ile, değeri print() ile ve adresi id() fonksiyonu ile öğrenilebilir.
>>> y=16
>>> type(y)
<class 'int'>
>>> print(y)
16
>>> id(y)
1777874944
Yukarıda y değişkeninin tipinin int, değerinin 16 ve adresinin 1777874944 olduğunu görmüş olduk. Aşağıdaki örnekleri inceleyebilirsiniz.
>>> a=6
>>> b=a+2
>>> c=d=e=4
>>> z=a*b*c
>>> print("a=", a)
a= 6
>>> print("b=", b)
b= 8
>>> print("c=", c)
c= 4
>>> print("d=",d)
d= 4
>>> print("e=",e)
e= 4
>>> print("z=", z)
z= 192
>>> z=z-100
>>> a=a+z
>>> print("a=",a)
a= 98
>>> print("z=",z)
z= 92
Karmaşık (Complex) Değişkenler
Karmaşık sayı içeren değişkenlerdir. Değişken atamasında bir farklılık yoktur.
>>> a=3+6j
>>> print(a)
(3+6j)
Karmaşık Değişkenin Gerçel (Real) ve Sanal (Imaginary) Kısımları
a’nın karmaşık bir değişken olduğunu düşünelim.
Gerçel Kısmı: a.real
Sanal Kısmı: a.imag
ifadeleriyle elde edebiliriz.
>>> a=1+2j
>>> print(a)
(1+2j)
>>> print(a.real)
1.0
>>> print(a.imag)
2.0
Bir Karmaşık Sayının Mutlak Değeri
a=x+iy karmaşık sayının mutlak değeri |a| şeklinde gösterilir ve |a| = √x²+y² şeklinde tanımlanır. Karmaşık sayının Python’daki mutlak değeri ise abs() fonksiyonu ile hesaplanır.
>>> a=3+4j
>>> print(abs(a))
5.0
>>> b=4+5j
>>> print(abs(b))
6.4031242374328485
Bir Karmaşık Sayının Eşleniğini (Conjugate) Bulmak
a=x+iy karmaşık sayısının eşleniği x-iy karmaşık sayısıdır. Python’da bunu hesaplayabilmek için conjigate fonksiyonu kullanılır.
>>> a=3+6j
>>> b=a.conjugate()
>>> print("a=",a)
a= (3+6j)
>>> print("b=",b)
b= (3-6j)
Karmaşık Değişkeni Complex Fonksiyonu ile Atamak
Karmaşık değişken tanımlamak için diğer bir metot complex fonksiyonunu kullanmaktır. a=complex(x,y) ifadesi ile a=x+iy karmaşık sayısı tanımlanır.
>>> a=complex(3,-3)
>>> b=a.conjugate()
>>> c=a*b
>>> print("a=",a)
a= (3-3j)
>>> print("b=",b)
b= (3+3j)
>>> print("c=",c)
c= (18+0j)