Bu dersteki bütün IPython Notebook'lar adresinde https://github.com/sinanonur/Python-Lectures mevcuttur ve bu adresteki içerik Türkçe'ye çevirilerek hazırlanmıştır.
import this
Bir varlığı ya da değeri belirtmek içni kullandığımız isimlere değişken denir. Pythonda değişkenler aşşağıdaki gibi tanımlanıp kullanılabilir:
x = 2
y = 5
xy = 'Hey'
print x+y, xy
Aynı değer birden fazla değişkene atanabilir.
x = y = 1
print x,y
Sembol | İşlem |
---|---|
+ | Toplama |
- | Çıkartma |
/ | Bölme |
% | Mod |
* | Çarpma |
// | yuvarlayan bölme |
** | kuvvet alma |
1+2
2-1
1*2
1/2
0? Bunun sebebi bölünen ve bölenin tamsayı(integer) fakat sonucun ondalık (float) olmasıdır ve bir tamsayı döndürülür. Bölünen ya da bölenden birisini ondalık sayıya çevirerek doğru cevap alınabilir.
1/2.0
15%10
Yuvarlayan bölme işlemi aslında sonucu en yakın tamsayıya yuvarlamaktan ibarettir.
2.8//2.0
Sembol | İşlem |
---|---|
== | True, eğer eşitse |
!= | True, eşit değilse |
< | küçüktür |
> | büyüktür |
<= | küçük eşit |
>= | büyük eşit |
z = 1
z == 1
z > 1
Sembol | İşlem |
---|---|
& | Mantıksal Ve |
l | Mantıksal Veya |
^ | XOR |
~ | Negate (Tersi) |
>> | Sağa kaydır |
<< | Sola kaydır |
a = 2 #10
b = 3 #11
print a & b
print bin(a&b)
5 >> 1
0000 0101 -> 5
0 ekleyerek (0 padding) basamakları 1 kez sağa kaydırma.
0000 0010 -> 2
5 << 1
0000 0101 -> 5
0 ekleyerek Basamakları 1 kez sola kaydırma
0000 1010 -> 10
Python bir çok gömülü fonksiyon ile birlikte gelir.
Hexadecimal (Onaltılık) sistemden decimal(onluk) sisteme geçmek 0x prefixi ekleyerek tersi hex( ) fonksiyonunu kullanarak yapılabilir. Octal(sekizlik) sistem geçişleri de benzer şekilde 0 prefixi ve oct( ) fonksitonu ile yapılabilir.
hex(170)
0xAA
oct(8)
010
int( ) 2 parametre alır ve birisi diğer sayı sistemindeki değeri ikincisi ise tabandır. Diğer sayı sistemindeki girdi String(yazı) şeklinde olmalıdır.
print int('010',8)
print int('0xaa',16)
print int('1010',2)
int( ) aynı zamanda ondalık bir sayıyı ya da String şeklinde ifade edilmiş bir tamsayıyı tamsayı formatına çevirmek için kullanılabilir. Benzer şekilde str( ) fonksiyonu Sytinge çevirmek için kullanılır.
print int(7.7)
print int('7')
Bunun dışında bin( ) ikili(binary) float( ) tamsayı/ondalık değerler ,için kullanılır. chr( ) ASCII değeri alfabedeki karşılığına çevirmek için, ord( ) ise tersi için kullanılır.
chr(98)
ord('b')
round( ) fonksiyonu belirtilen sayıyı en yakın tamsayıya ya da belirtilen hassasiyeteki sayıya çevirebilir.
print round(5.6231)
print round(4.55892, 2)
complex( ), karmaşık sayı ranımlamak için kullanılır. abs( ) mutlak değeri verir.
c =complex('5+2j')
print abs(c)
divmod(x,y) bölüm ve kalanı tuple(sonraki bölümlerde öğreneceğiz) formunda (bölüm, kalan)şeklinde verir.
divmod(9,2)
isinstance( ), eğer verilen ifade verilen sınıfın bir üyesiyse True döndürür. Aynı anda birden fazla sınıfı test etmek mümkündür.
print isinstance(1, int)
print isinstance(1.0,int)
print isinstance(1.0,(int,float))
cmp(x,y)
x ? y | Çıktı |
---|---|
x < y | -1 |
x == y | 0 |
x > y | 1 |
print cmp(1,2)
print cmp(2,1)
print cmp(2,2)
pow(x,y) $x^y$ değerini hesaplamak için kullanılır.
pow(x,y,z) de ($x^y$ % z) değerini hesaplamak için kullanılır. Yukarıdaki değeri hesaplayıp modunu almaktadır.
print pow(3,3)
print pow(3,3,5)
range( ) fonksiyonu verilen aralıktaki tamsayıları verir.Artışı vererek seriler oluşturmak için de kullanılabilir. Sonuçlar liste (daha sonra değinilecek) şeklinde verilir.
print range(3)
print range(2,9)
print range(2,27,8)
raw_input( ) bir girdi okuyarak bir string içinde saklar. Kullanıcı bir tamsayı girerse önce bu tamsayıya çevrilmeli sonra işleme devame dilmelidir.
abc = raw_input("Buraya yazdığınız şey abc değişkeninde saklanacaktır. \t")
type(abc)
input( ), sadece tamsayı girdi kabul etmek içindir.
abc1 = input("bu değişkende sadece tamsayı saklanabilir. \t")
type(abc1)
Not: type( ) verilen sayı ya da değişkenin formatını ya da türünü döndürür.