logo
21 HAZİRAN 2025

Bilgi alma ve kıyaslama

25.01.2021 00:00:00
'Bilgi alma ve kıyaslama' seslendirme dosyası:

Tekrar merhaba. Yine kısa bir özetle neler yaptık hatırlayalım. Şu ana kadar kabaca 4 işlem ve biraz fazlasını, print komutunun bazı yeteneklerini, sayılarımıza özel isim vererek onları depolayabildiğimiz değişkenleri, farklı kişiler için vücut kitle indeksi bulmayı, int, float ve str veri tiplerini, kodumuzun içinde her satırda kare # işaretinden sonra hatırlatıcı notlar yazmayı öğrendik.

Sayılarımız, her zaman kodun içinde hazır olmayabilir ve bazen kullanıcıdan da bilgi almamız gerekebilir. Bu durumda input komutunu kullanıyoruz. Gelin kullanıcıya adını sorup ona adıyla merhaba diyen minik bir kod yazalım:

	ad = input ( "Adınız : " )
	print ( "Merhaba " + ad )

Burada input komutu ekrana Adınız : yazıp bizim bir cevap vermemizi bekler. Yazılan metin her ne ise, = eşittir atama sembolüyle input komutundan onu alıp ad değişkenine koyarız. İkinci satırda printle ekrana Merhaba deyip bir de boşluk bırakarak, ad değişkenine az önce konan ismi, merhabanın yanına yazarız.

İkinci satırdaki + işareti farkettiyseniz sayıları değil bu sefer yazıları topluyor, yani yan yana yapıştırıyor. Toplama işaretinin bu metin yapıştırma özelliğini unutmayalım. Çok basit, sayı varsa onları toplar, metin varsa onları yapıştırır.

input komutu bizden aldığı her veriyi metin kabul eder. Bunu bilmemiz gerekli, zira inputla buradaki gibi metin değil de kilo, boy, yaş vs. sayısal bir bilgi aldığımızda onun sayı olduğunu düşünürsek hata yapmış oluruz. Bu nükteyi, verilen bir sayının bir fazlasını bulmak isteyen şu kodla anlamaya çalışalım :

	s = input ( "Bir sayı girin : " )
	print ( s + 1 )

Bu haliyle çalıştığında Python hata verir. Neden? Biz örneğin 5 yazsak bile input komutu onu tırnak içinde "5" olarak yani sayı olan 5 değil de metin olan "5" olarak alacağından, ikinci satırda sayı olan 5 e değil, metin olan "5" e 1 eklemeye çalışır ve kodumuz patlar!

Düzeltmek için inputtan gelen metin halindeki sayıyı gerçek bir sayıya dönüştürmemiz lazım. Bunu, metni bir paranteze alarak ve dönüştüreceğimiz türün kelimesini parantezin önüne koyarak yapıyoruz. Örnekler :

	int ( "5" )		# metin olan "5" tamsayı olan 5 e dönüşür
	float( "6.28" )	# metin olan "6.28" ondalıklı olan 6.28 sayısına dönüşür
	str (12.06)		# sayı olan 12.06, "12.06" metnine dönüşür

O halde yukarıdaki kodumuzun çalışan hali şu şekilde olmalıdır :

	s = input ( "Bir sayı girin : " )
	print ( int(s) + 1 )

Evet artık inputtan yine "5" geliyor ama int("5") onu sayı olan 5 e çevireceğinden Python hata vermeyecek ve 5 ile 1 i toplayabilecektir. Kafamız biraz karıştıysa, şöyle bir özetle toparlayalım :

	print( 5 + 5 )		# aritmetik toplama, sonuç 10 sayısı
	print( "5" + "5" )	# metin yapıştırma, sonuç "55" metni ;)
	print( 5 + "5" )	# farklı türlerde işlem yapamayız, sonuçta hata alırız!

Bugün son olarak, karar verme, kıyaslama yahut karşılaştırma işlerimizi yaparken kullanacağımız if komutuna bir bakalım. Örnek olarak ta kullanıcıya kar yağan mevsimi soran bir kod kullanalım :

	m = input("Hangi mevsimde kar yağar? ")
	if m == "kış":
		print( "Tebrikler" )
		print( "Doğru yanıt" )
	print( "İyi günler" )

Bu koddaki en önemli kısım iki tane yan yana eşittir "==" işareti. İlk satırdaki tek eşittir "=" ( atama ) işaretiyle kullanıcının cevabını "m" değişkenine alırken, ikinci satırda if komutundaki çift eşittirle bir karşılaştırma yapıyoruz. Python burada m değişkeniyle "kış" metnini karşılaştıracak. m değişkeninde ne vardı, ilk inputtan gelen kullanıcı yanıtı. O halde yanıt "kış" ise 3. ve 4. satırda başında biraz da boşluk olan, print komutları çalışacaktır.

if satırında en sondaki iki nokta üst üste işareti de ":" önemli, unutursak hata olur. Bir başka dikkatinizi çekmek istediğim şey, Pythonda girintili kodların bir birliktelik anlamı olduğu. Farkettiğiniz gibi tüm komutlar aynı hizadayken testin tutması halinde yapılmasını istediğimiz bütün işler biraz sağa doğru girintili yazılmış. Bunu da unutmuyoruz. Ve son print komutunun her halükarda (kullanıcı kış girse de girmese de) çalışacağını kaçırmayalım. Eğer kullanıcı doğru yanıt vermezse Pythondan göreceği tek tepki "iyi günler" olacak.

Eğer yanıta kış girilmezse ne yapılacağını else: kelimesiyle ifade edeceğiz. O da bir sonraki yazımıza kalsın. Tekrar görüşmek dileklerimle.

Öğrendiklerimizi muhakkak aşağıdaki online sitelerden herhangi birinde uygulamayı ihmal etmeyin :

Kaynakça :
▪️ https://docs.python.org/3/tutorial/introduction.html

Yorumlar
Yorum bulunmuyor.
Yorumlarınızı paylaşın

--
 
Nahit Taşpınar / diğer yazıları
Cumhurbaşkanı Başdanışmanı Oktay Saral, "Suyun ısındı" demişti
Altaylı'dan haber alınamıyor
Savaşa dahil olma
İran'dan ABD'ye açık mesaj
ABD İran'a saldırıya dahil oluyor mu?
Dev savaş uçakları havalandı
Fatih Altaylı gözaltına alındı
Neden gözaltında?
Gazze'yi unutmayın, unutturmayın
Son 48 saatte 202 Müslüman daha katledildi
Türkçe bunalttı!
TYT'de Matematik zorladı
Ya intikam alırlarsa...
Almanya, İsrail korkusundan tır tır titriyor
İran Dışişleri Bakanı Erakçi, İstanbul'da konuştu
"ABD'nin bu saldırganlığa katılabileceğini duyduk"
Gazze'deki toplama kampları Hitler'inkinden beter
Netanyahu da Hitler gibi dünyayı ateşe atıyor
Bunun önüne geçmek için ne yapmak lazım?
Sıcaklar, elektrikli araçları zorluyor
Üniversite yolunda ilk sınav
Yaklaşık 2,5 milyon öğrenci katılıyor
"İsrail hepimiz için kirli iş yapıyor" demişti
Almanya Başbakanı hakkında suç duyurusu
Bazı ülkelerde büyükelçilerimiz değişti
Atama kararları Resmi Gazete'de
İsrail İran'ın Kum kentinde sivil bir binayı vurdu
16 yaşında bir çocuk öldü
İran'ın nokta atışları devam ediyor
Tel Aviv, Hayfa ve Beerşeba'daki askeri üsler vuruldu
Cumhurbaşkanı Başdanışmanı Oktay Saral, "Suyun ısındı" demişti
Altaylı'dan haber alınamıyor
Savaşa dahil olma
İran'dan ABD'ye açık mesaj
ABD İran'a saldırıya dahil oluyor mu?
Dev savaş uçakları havalandı
Fatih Altaylı gözaltına alındı
Neden gözaltında?
Gazze'yi unutmayın, unutturmayın
Son 48 saatte 202 Müslüman daha katledildi
Türkçe bunalttı!
TYT'de Matematik zorladı
Ya intikam alırlarsa...
Almanya, İsrail korkusundan tır tır titriyor
İran Dışişleri Bakanı Erakçi, İstanbul'da konuştu
"ABD'nin bu saldırganlığa katılabileceğini duyduk"
Gazze'deki toplama kampları Hitler'inkinden beter
Netanyahu da Hitler gibi dünyayı ateşe atıyor
Bunun önüne geçmek için ne yapmak lazım?
Sıcaklar, elektrikli araçları zorluyor
Üniversite yolunda ilk sınav
Yaklaşık 2,5 milyon öğrenci katılıyor
"İsrail hepimiz için kirli iş yapıyor" demişti
Almanya Başbakanı hakkında suç duyurusu
Bazı ülkelerde büyükelçilerimiz değişti
Atama kararları Resmi Gazete'de
İsrail İran'ın Kum kentinde sivil bir binayı vurdu
16 yaşında bir çocuk öldü
İran'ın nokta atışları devam ediyor
Tel Aviv, Hayfa ve Beerşeba'daki askeri üsler vuruldu
logo

Beşyol Mah. 502. Sok. No: 6/1
Küçükçekmece / İstanbul

Telefon: (212) 624 09 99
E-posta: internet@yenimesaj.com.tr gundogdu@yenimesaj.com.tr


WhatsApp iletişim: (542) 289 52 85


Tüm hakları Yeni Mesaj adına saklıdır: ©1996-2025

Yazılı izin alınmaksızın site içeriğinin fiziki veya elektronik ortamda kopyalanması, çoğaltılması, dağıtılması veya yeniden yayınlanması aksi belirtilmediği sürece yasal yükümlülük altına sokabilir. Daha fazla bilgi almak için telefon veya eposta ile irtibata geçilebilir. Yeni Mesaj Gazetesi'nde yer alan köşe yazıları sebebi ile ortaya çıkabilecek herhangi bir hukuksal, ekonomik, etik sorumluluk ilgili köşe yazarına ait olup Yeni Mesaj Gazetesi herhangi bir yükümlülük kabul etmez. Sözleşmesiz yazar, muhabir ve temsilcilere telif ödemesi yapılmaz.