Python “input()” Komutu ve Veri Türleri

Bu yazımızda, Python program(komut) dosyaları, klavyeden veri girişi ve veri türleri konularına değineceğiz. Bundan önceki yazılarımızda “Python Etkileşimli Kabuk(Interactive Shell)” üzerinden programlama yapmıştık.(PyCharm için -> “Python Console”) Ancak bildiğiniz üzere Etkileşimli Kabuk ile yazdığımız programlar, tanımladığımız değişkenler ve aldığımız çıktılar geçici olarak saklanmaktadır. Oluşturduğumuz programların kaybolmaması için program(komut) dosyalarını kullanırız. 

İşe öncelikle bir adet komut dosyası oluşturmakla başlayalım. PyCharm açıldıktan sonra, sol üstteki “File” menüsündeki “New Project” seçeneğine tıklayalım. “Create Project” isimli bir pencere açılacaktır. Açılan pencerede; “Location” kısmında proje ismi(“untitled” kısmını değiştirin) ve Python dosyalarımızın konumu, “Interpreter” kısmında ise yorumlayıcı yani Python sürümü seçilmektedir. Detaylı yardım için link: PyCharm Yardım Sayfası

Projemizi oluşturduktan sonra; “File -> New -> Python File” adımlarını takip ederek veya proje klasörüne sağ tıklayıp, “New -> Python File” adımlarıyla program dosyamıza isim verelim ve oluşturalım. PyCharm karşımıza boş bir program dosyası getiriyor. Artık kodumuzu yazıp, kaydetmeye hazırız. İlk programımız olarak; “x” ve “y” ismindeki iki tane değişkene kendimizin belirlediği sayıları atayan, bu değerlerin birbirleriyle dört işlemini yaptıran ve “print()” komutuyla ekrana yazdıran bir program oluşturalım.  Programımızı iki farklı şekilde yazabiliriz. 

x = 35
y = 10
print("%d ile %d sayılarının toplamı: %d, farkı: %d, çarpımı: %d ve bölüm: %g'dir.\n" %(x,y,x+y,x-y,x*y,x/y))
x = 35
y = 10
top = x + y
cik = x - y
carp = x * y
bol = x / y
print("%d ile %d sayılarının toplamı: %d, farkı: %d, çarpımı: %d ve bölümü: %g'dir.\n" %(x,y,top,cik,carp,bol))

Python program dosyalarının uzantısı “.py” şeklindedir.

Programımızı yazdıktan sonra çalıştırmadan önce kaydetmemiz gerekir. PyCharm bu işlemi otomatik olarak yapıyor.

Veri Türleri

String – “str” : Karakter dizilerini ifade eden veri tipidir.

Örnek: x = “Python”

*Integer – “int” : Tam sayıları ifade eden veri tipidir.

Örnek: x = 35

Float – “float” : Ondalıklı sayıları ifade eden veri tipidir.

Örnek: x = 35.5

Complex – “complex” : Kompleks(Karmaşık) sayıları ifade eden veri tipidir.(Reel sayılar bu tipe dahildir.)

Örnek: x = 3+4j

List – “list” : Listeleri ifade eden veri tipidir.

Örnek: x = [35, 6, 20]

Tuple – “tuple“: Dilimizde “Demet, Tüp” olarak kullanımı yayın, içi değiştirilemeyen listeleri ifade eden veri tipidir.

Örnek: x = (“Python”, “Öğreniyorum”)

Dictionary – “dict“: Sözlükleri ifade eden veri tipidir.

Örnek: x = {“İzmir”:35, “Ankara”:6}

Set – “set” : Kümeleri ifade eden veri tipidir. Matematikteki kümelere karşılık gelmekte ve aynı özellikleri(kesişim, birleşim vb.) taşımaktadır.

Örnek: x = {1, 2, 3, 4}

**Boolean – “bool” : Mantıksal veri türünü ifade eden veri tipidir. Bu veri tipi  binary(ikili) yapıdadır, 1 byte’lık değeri vardır.  Yalnızca iki değer alır; bir değişken, ya doğrudur ya da yanlıştır. (0 = False, 1 = True)

Örnek: x = True

Veri türünü öğrenmek için “type()” komutunu kullanılırız.

Örnek: type(x)

*Python 3’ten önce, “int” veri türü 32 bit olmakla beraber belli bir aralığa kadar olan tam sayıları kapsamaktaydı. Aralığın dışındaki tam sayılar 64 bit olan “long”(long-int) veri türüne dahil olmaktaydı. Python 3 ile birlikte, “int” veri tipini sınırsız aralığa sahiptir.

**”Boolean”, bilgisayar biliminin babası olarak kabul edilen ve modern simgesel mantığın kurulmasına katkı veren “George Boole” adına ithaf edilmiştir.

Klavyeden Veri Alma ve Tür Dönüşümleri

Bir bilgisayar programında kullanılacak verileri hep kendimiz belirlemeyiz. Bu verileri, kullanıcının anlık olarak  girmesini veya bir veri tabanından aktarmayı isteyebiliriz. Yazdığımız programlarda kullanılacak verileri değişkenlere atamıştık. Klavyeden veri alırken de aynı mantıkla veriyi bir değişkene atayacağız.

Klavyeden veri almak için “input()” komutu kullanılır. “input()” komutu ile hem sayısal hem de sözel(karakter, dizi) veri alınabilir. Ancak, Python’da “input()” ile girilen bütün veriler karakter dizisi olarak kayıt olur. İşte bu durumdan ötürü, sayısal veriler için tür dönüşümü uygulayacağız.

isim = input('Adınızı girin: ')
yaş = int(input('Yaşınızı girin: '))
yaş2 = input('Yaşınızı girin: ')    #Dönüşüm yapmadık, "str" olacak.
print(isim, yaş)
print(type(isim), type(yaş), type(yaş2))

Gördüğünüz üzere, tür dönüşümü yapılmazsa veri tipi “str” olarak kalıyor. Program yazarken buna dikkat edelim.  Tür dönüşüm fonksiyonları ve bunlarla ilgili bir örnek uygulama yapalım:

int(x, base)        #Veriyi verilen tabandan onlu tabanda tam sayıya dönüştürür.(base=10)
float()             #Veriyi ondalıklı sayıya dönüştürür.
str()               #Veriyi karakter dizisine dönüştürür.
chr()               #Sayısal veriyi karaktere dönüştürür.
ord()               #Karakteri onlu tabandaki değerine dönüştürür.
complex(real, imag) #Veriyi karmaşık sayıya dönüştürür.
bool()              #Veriyi mantıksal karşılığını verir.
hex()               #Veriyi heksadesimal(16 tabanlı) sayı sistemine dönüştürür.
list()              #Veriyi listeye dönüştürür.
set()               #Veriyi kümeye dönüştürür.
dict()              #Veriyi sözlüğe dönüştürür.
tuple()             #Veriyi "demete/tüpe" dönüştürür.
isim = input('Adınızı girin: ')
yaş = input('Yaşınızı girin: ') #str halde
boş = ""                        #False değeri verecek.
print(type(isim), type(yaş))
print(list(isim), set(isim), tuple(isim), bool(isim), bool(boş))
print(int(yaş), int(yaş, 7), float(yaş), hex(int(yaş)), complex(yaş))
Büyütmek için üstüne tıklayın.

Programın “.py” dosyasını aşağıdaki linkten indirebilirsiniz. Görüşmek üzere!

Bütün Python kodlarına Github sayfam aracılığı ile erişebilirsiniz. Github sayfamın linkine aşağıdan ulaşabilirsiniz.

Github: Github Python

Sitemize destek olmak isteyen sponsorlar için linkPatreon

close

Yeni yazılardan haberdar olmak için sitemize abone olun.

İstenmeyen posta göndermiyoruz! Sadece yeni yazılarla ilgili mail alacaksanız.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir