Merhabalar geçenlerde python öğrenmeye başladım ve izlediğim videolardan birinde uygulamalı olarak çalışırken aklıma bir soru takıldı ve sizlere danışmak istedim
def bmi_c(isim, boy, kilo): bmi = kilo / (boy ** 2) print("bmi:") print(bmi) if bmi < 25: return isim + " obez değil." else: return isim + " obez."
Yukarıda gördüğünüz şekilde bir blok oluşturdum ve bu bloğu "sonuç1" değişkenine atadım. "sonuç1" değişkenini çalıştırdığımda karşıma gelen çıktıda bana sadece BMI veriliyor. Ancak burada BMI bana verildikten sonra return komutu ile aşağıya ismim ile beraber "obez değildir." yazısının çıkması gerektiğini düşündüm. Bu yazıyı alabilmek için neden ayriyetten print komutu ile "sonuç1" değişkenini çalıştırmam gerek ?
Cevaplarınızı bekliyorum şimdiden teşekkürler.
not: kodlarda bir sıkıntı yok sitede tam olarak ayarlayamadım boşluklar vs olması gerektiği gibidir.
< Bu mesaj bu kişi tarafından değiştirildi arnfauglith -- 1 Temmuz 2020; 23:41:21 >
Daha sonra print(sonuç1) komutunu çalıştırdığımda ise "Ömer obez değil." cevabını alıyorum. Benim burda aklıma takılan şey ben aynı şekilde sonuç1 değişkenini çalıştırdığımda, print ettiğim zaman aldığım "Ömer obez değil." cevabını neden aynı şekilde alamıyorum.
Çok teşekkür ederim. Eğer anlayabildiysem kısaca yazdığım fonksiyon bloğunu bir değişkene atadığım zaman program kendine sadece return komutunu alıyor ve bir nevi print komutlarını aradan çıkarmak isteyip çalıştırıyor.
Yanlış değilsem eğer ki return komutu da print komutu gibi kendi başına bize bir çıktı verebilseydi fonksiyonu değişkene atadığımız zaman o da bizlere print komutu gibi çıktı vericekti ancak bu sefer değişkeni kullanmak isteyip çağırdığımızda değişkene hiç bir değer tanımlanmayıp "None" çıktısını alacaktık.
yazdığım fonksiyon bloğunu bir değişkene atadığım zaman program kendine sadece return komutunu alıyor ve bir nevi print komutlarını aradan çıkarmak isteyip çalıştırıyor.
Bu kısma aradan çıkartmak demeyelim
Funksiyon bi değeri return eder,
EkmekVer() diyince sadece ekmek döner mesela ama bakkala gidip sipariş verip getiriyorum kısımları o fonksiyonun içindedir, Bunu da eşittir ile bir şeye eşitleyince artık o eşitlediğimiz şey sadece = ekmektir Fonksiyon ile herhangi bir bağı yok
Teşekkür ederim yani biz değişkene atayıp komutu çağırdığımız zaman "ekmek" almaya gittiğimiz kısımlar hâla duruyor fakat biz sadece ekmeği aldığımız kısmı görüyoruz diyebilir miyiz?
Not: Ayrıca bizim "ekmek" almaya gittiğimiz kısımları print komutu ile çağırdığımız değişken ile getirme imkanı var mıdır ?
< Bu mesaj bu kişi tarafından değiştirildi arnfauglith -- 2 Temmuz 2020; 14:11:16 >
def bmi_c(isim, boy, kilo):
bmi = kilo / (boy ** 2)
print("bmi:")
print(bmi)
if bmi < 25:
return isim + " obez değil."
else:
return isim + " obez."
Yukarıda gördüğünüz şekilde bir blok oluşturdum ve bu bloğu "sonuç1" değişkenine atadım. "sonuç1" değişkenini çalıştırdığımda karşıma gelen çıktıda bana sadece BMI veriliyor. Ancak burada BMI bana verildikten sonra return komutu ile aşağıya ismim ile beraber "obez değildir." yazısının çıkması gerektiğini düşündüm. Bu yazıyı alabilmek için neden ayriyetten print komutu ile "sonuç1" değişkenini çalıştırmam gerek ?
Cevaplarınızı bekliyorum şimdiden teşekkürler.
not: kodlarda bir sıkıntı yok sitede tam olarak ayarlayamadım boşluklar vs olması gerektiği gibidir.
< Bu mesaj bu kişi tarafından değiştirildi arnfauglith -- 1 Temmuz 2020; 23:41:21 >