Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Python Melaksanakan Kod pada Masa Import, dan Bagaimana Saya Boleh Menghalangnya?
Anda menghadapi isu pelik semasa melaksanakan program Python anda menggunakan batch.py. Apabila mengimport modul utama, ralat berlaku. Soalan ini meneroka sebab Python melaksanakan kod pada masa import dan menawarkan penyelesaian untuk mengurangkan tingkah laku ini.
Masalah Dasar
Python mentafsir kata kunci seperti kelas dan def sebagai penyataan boleh laku . Mengimport modul mencetuskan pelaksanaan segera kenyataan ini. Dalam kes batch.py, mengimport keputusan utama dalam pelaksanaan kod utama, menyebabkan ralat yang disebutkan di atas.
Penyelesaian: Melaksanakan Kod Hanya Apabila Perlu
Idiomatik pendekatan untuk menangani isu ini ialah mengasingkan pelaksanaan kod. Amalan berikut membolehkan anda mentakrifkan fungsi dan kelas sambil menghalang pelaksanaannya melainkan modul dijalankan secara langsung:
# Code to be executed regardless of import status # (e.g., class and function definitions) def main(): # Code to be executed only when the module is run as the main program if __name__ == "__main__": main()
Dengan meletakkan kod boleh laku anda dalam fungsi utama, Python hanya melaksanakannya apabila modul dijalankan secara langsung melalui nama skripnya, seperti "python main.py". Ini menghalang pelaksanaan kod yang tidak diingini semasa import modul, seperti dalam kes "python batch.py".
Atas ialah kandungan terperinci Mengapa Python Melaksanakan Kod pada Masa Import, dan Bagaimana Saya Boleh Menghalangnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!