Press "Enter" to skip to content

Python Kullanıcı Veri Girişi input ()

Yaşar SAFALI 0

Python Kullanıcı Veri Girişi input ()

Python Kullanıcı Veri Girişi input

Python’da kullanıcıdan veri almak, veri girişi sağlamak için input() metodu kullanılır.Bu metot kullanıcıdan aldığı verileri String(karakter dizisi) tipinde tutar.Biz yapacağımız işleme göre kullanıcıdan aldığımız verinin türünü değiştirebiliriz.Tip dönüşümlerini önceki yazılarımızda açıklamıştık.Şimdi kullanıcıdan nasıl veri alacağımızı inceleyelim.Python Kullanıcı Veri Girişi input

girilenveri=input("Lütfen bir sayı giriniz ")
print(type(girilenveri))

Output:

Lütfen bir sayı giriniz 85
<class 'str'>

Görüldüğü gibi kullanıcıdan değer okumak için input() fonksiyonunu kullanıyoruz.Kullanıcı sayı girmiş olsa da input() fonksiyonu bizlere str() tipinde veri döndermektedir.Biz bu verinin tipini istediğimiz tipe çevirebiliriz.Dikkat etmemiz gereken tek nokta integer  tipine dönüşüm yaparken girilen ifadenin sadece sayıları içermesi gerekir.Aksi halde hata ile karşılaşılır.Örnek olarak kullanıcının girdiği veriyi integer tipine çevirelim.

girilenveri=input("Lütfen bir sayı giriniz ")
girilenveri=int(girilenveri)
print(type(girilenveri))

Output:

Lütfen bir sayı giriniz 64
<class 'int'>
Görüldüğü gibi artık verimiz integer tipindedir.

eval()

Bu fonksiyon kullanıcıdan aldığımız karakter dizilerini işlemeye yarar.Peki bu işleme nedir?Örneğin kullanıcı bize giriş olarak 8*9+5 gibi bir karakter dizisi girdi.eval() fonksiyonu kullanıldığında bu matematiksel işlemin sonucu bize dönecektir.Yani eval() fonksiyonu kullanıcının girdiği veri içerisinde Python komutu varsa o ifadeyi çalıştırır.Örneğin biz kullanıcıdan bir sayı girmesini istiyoruz.Ancak kullanıcı bize print(“Merhaba”) komutunu veri olarak girse eval() fonksiyonu bu komutu çalıştıracaktır.Bu da kullanıcının bilgisayarımıza müdahale etmesini sağlar ki eval() fonksiyonu bu açıdan kullanılırken dikkatli olunmalıdır.Python Kullanıcı Veri Girişi input

girilenveri=input("Veri Giriniz\n")
print(eval(girilenveri))

Output:

Veri Giriniz
print("merhaba dünya")
merhaba dünya

girilenveri=input("Veri Giriniz\n")
print(eval(girilenveri))

Output:

Veri Giriniz
8+7-3/4*9
8.25

exec()

Bu fonksiyon da eval() fonksiyonu ile aynı mantıkta çalışır.En büyük farkı eval() fonksiyonundan daha kapsamlı Python kodları çalıştırır.Örneğin eval() fonksiyonu ile hem değişken ataması yapıp hemde ekrana yazdıramayız.Ama bu işlemi exec() fonksiyonu ile gerçekleştirebiliriz.

eval() ve exec() fonksiyonu kullanıcının bilgisayarımıza müdahale etmesini sağlar.Son derece tehlikeli fonksiyonlardır. Alternatif bir yol izlenebilirse kullanılmaması daha doğrudur. Kullanıldığında da dikkatli olunmalıdır.

Bir sonraki yazımızda görüşmek üzere.

 

Bir cevap yazın

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