Python'da __name__ değişkeni dosyanın (modülünün) hangi yolla çağrıldığını kontrol eder. __name__ == "__main__" kontrolü dışarıdan import edildiğinde hangi alanların çalıştırılacağının seçimini yapar.
Sık gördüğünüz ama ne işe yaradığını ve ne zaman kullanılması gerektiğini düşündüğünüz __name__ == "__main__" kontrolünü öğrenmek için aşağıdaki 2 dosyayı oluşturup tek tek çağırın.
__name_main.py
print("__name_main.py --> ilk satır")
def fonksiyon(parametre):
return 'Parametre: {}'.format(parametre)
print("__name_main.py --> __name__ öncesi")
if __name__ == "__main__":
print("Bu alan sadece __name_main.py direk çağrıldığında çalışır, dışarıdan çağrılamaz.")
print("__name_main.py --> __name__ ilk satır")
degisken = fonksiyon("merhaba")
print(degisken)
print("__name_main.py --> __name__ son satır")
print("__name_main.py --> __name__ sonrası")
print("__name_main.py --> son satır")
print("__name_main_import.py --> ilk satır")
print("__name_main_import.py --> import __name_main öncesi")
import __name_main
print("__name_main_import.py --> import __name_main sonrası")
degisken = __name_main.fonksiyon("dışarıdan bağlantı")
print(degisken)
print("__name_main_import.py --> son satır")
Python
hakkında diğer konular