Python Print kodu neden yanlış çalışıyor?

Kemikli_terapi

Centipat
Katılım
2 Ağustos 2022
Mesajlar
319
Daha fazla  
Sistem Özellikleri
işlemci: i5 3470
Ekran kartı: 1650
Ram: 16 gb
Cinsiyet
Erkek
1685009248312.png

Adam ne yaparsa aynısını yaptım ama program da yanlış çalışıyor.
 
Format kullanmayın. Okunmayı zorlaştırıyor. Gerçekten performans gerektiren yerde kullanabilirsiniz çünkü f-stringlerden biraz daha hızlı. Keza farklı olduğu yerler var, oralarda da kullanabilirsiniz. Ama bu tarz durumlarda kullanmayın. Spagetti koda doğru götürüyor.

Olay da pek açıklanmamış. Açıklamaya çalışayım.
.format() şeklinde kullanılıyor. Oradaki nokta sınıfın elemanına erişmeyi sağlıyor. Bu eleman metot ya da değişken olabilir. Farklı şekillerde isimlendirildiği oluyor. Yani nokta genel bir şey. liste.append() demenizdeki nokta ile aynı nokta. Herhalde oraya gelmişsinizdir diye umuyorum.
Virgül olsaydı parametre olurdu. print fonksiyonuna verilen parametre. Ama siz bir adet string oluşturup print fonksiyonuna tek parametre olarak o stringi verek istiyorsunuz.

f-stringlerde şöyle oluyor. Başında, string dışında f var. İfadeler ilgili parantez içine.
Kod:
ad = "kerem"
yas = 16

print(f"Benim adım {ad}, yaşım {yas}.")

Formatta da olduğu gibi değişken kullanılabiliyor. Siz örneğinizde orada da hata yapmışsınız. Kerem ile 16'yı tek string içinde vermişsiniz.
String içine string olarak string koymanın bir anlamı yok. Örneğimdeki gibi bir değişkene atasanız veya string olmayan bir şeyi (gerçi onun da __str__ metodu çağrılıyor ama olsun) çağırsaydınız daha mantıklı olurdu.


Ve son olarak, düzgün bakın. Yazım hatası yüzünden konu açıp duruyorsunuz. Gözünüzün önündekinin birebir aynısı olduğundan emin olmak için 5 kere kontrol edin. Gerçekten aynı olmasına rağmen çalışmıyorsa gelip konu açın. Konunun onayıydı, cevabın gelmesiydi, vaktiniz gidiyor. Yoksa konu açıp durun, kimseyi ilgilendirmez.
Eğitimi de başka yerden alırdım ben olsam. Pek iyi bir yere benzemiyor.
 
Format kullanmayın. Okunmayı zorlaştırıyor. Gerçekten performans gerektiren yerde kullanabilirsiniz çünkü F-stringlerden biraz daha hızlı. Keza farklı olduğu yerler var, oralarda da kullanabilirsiniz. Ama bu tarz durumlarda kullanmayın. Spagetti koda doğru götürüyor.

Olay da pek açıklanmamış. Açıklamaya çalışayım.
.format() şeklinde kullanılıyor. Oradaki nokta sınıfın elemanına erişmeyi sağlıyor. Bu eleman metot ya da değişken olabilir. Farklı şekillerde isimlendirildiği oluyor. Yani nokta genel bir şey. liste.append() demenizdeki nokta ile aynı nokta. Herhalde oraya gelmişsinizdir diye umuyorum.
Virgül olsaydı parametre olurdu. Print fonksiyonuna verilen parametre. Ama siz bir adet string oluşturup print fonksiyonuna tek parametre olarak o stringi verek istiyorsunuz.

F-stringlerde şöyle oluyor. Başında, string dışında F var. İfadeler ilgili parantez içine.
Kod:
ad = "kerem"
yas = 16

print(f"Benim adım {ad}, yaşım {yas}.")

Formatta da olduğu gibi değişken kullanılabiliyor. Siz örneğinizde orada da hata yapmışsınız. Kerem ile 16'yı tek string içinde vermişsiniz.
String içine string olarak string koymanın bir anlamı yok. Örneğimdeki gibi bir değişkene atasanız veya string olmayan bir şeyi (gerçi onun da __str__ metodu çağrılıyor ama olsun) çağırsaydınız daha mantıklı olurdu.

Ve son olarak, düzgün bakın. Yazım hatası yüzünden konu açıp duruyorsunuz. Gözünüzün önündekinin birebir aynısı olduğundan emin olmak için 5 kere kontrol edin. Gerçekten aynı olmasına rağmen çalışmıyorsa gelip konu açın. Konunun onayıydı, cevabın gelmesiydi, vaktiniz gidiyor. Yoksa konu açıp durun, kimseyi ilgilendirmez.
Eğitimi de başka yerden alırdım ben olsam. Pek iyi bir yere benzemiyor.

Kendimi mağara adamı gibi hissetttim konuya o kadar yabancıyım ki.
 
Format kullanmayın. Okunmayı zorlaştırıyor. Gerçekten performans gerektiren yerde kullanabilirsiniz çünkü F-stringlerden biraz daha hızlı. Keza farklı olduğu yerler var, oralarda da kullanabilirsiniz. Ama bu tarz durumlarda kullanmayın. Spagetti koda doğru götürüyor.

Olay da pek açıklanmamış. Açıklamaya çalışayım.
.format() şeklinde kullanılıyor. Oradaki nokta sınıfın elemanına erişmeyi sağlıyor. Bu eleman metot ya da değişken olabilir. Farklı şekillerde isimlendirildiği oluyor. Yani nokta genel bir şey. liste.append() demenizdeki nokta ile aynı nokta. Herhalde oraya gelmişsinizdir diye umuyorum.
Virgül olsaydı parametre olurdu. Print fonksiyonuna verilen parametre. Ama siz bir adet string oluşturup print fonksiyonuna tek parametre olarak o stringi verek istiyorsunuz.

F-stringlerde şöyle oluyor. Başında, string dışında F var. İfadeler ilgili parantez içine.
Kod:
ad = "kerem"
yas = 16

print(f"Benim adım {ad}, yaşım {yas}.")

Formatta da olduğu gibi değişken kullanılabiliyor. Siz örneğinizde orada da hata yapmışsınız. Kerem ile 16'yı tek string içinde vermişsiniz.
String içine string olarak string koymanın bir anlamı yok. Örneğimdeki gibi bir değişkene atasanız veya string olmayan bir şeyi (gerçi onun da __str__ metodu çağrılıyor ama olsun) çağırsaydınız daha mantıklı olurdu.

Ve son olarak, düzgün bakın. Yazım hatası yüzünden konu açıp duruyorsunuz. Gözünüzün önündekinin birebir aynısı olduğundan emin olmak için 5 kere kontrol edin. Gerçekten aynı olmasına rağmen çalışmıyorsa gelip konu açın. Konunun onayıydı, cevabın gelmesiydi, vaktiniz gidiyor. Yoksa konu açıp durun, kimseyi ilgilendirmez.
Eğitimi de başka yerden alırdım ben olsam. Pek iyi bir yere benzemiyor.

Hocam peki şu ikisinin performans açısından farkı var mıdır?

Python:
ad = "Mesut"
print("Benim adım",ad)

Python:
ad = "Mesut"
print("Benim adım {}".format(ad))
 
Hangisi daha hızlı çalışır ilki diye düşünüyordum ama şöyle bir kod yazınca ikinci daha hızlı çıktı. Kodumda mı bir hata var yoksa ikincisinin daha hızlı çalışması normal mi?
1685047262435.png
 

Yeni konular

Geri
Yukarı