Kekeliruan Titik Kemasukan: Mengapa Fungsi utama() Menentang Pelaksanaan
Kod anda menampilkan fungsi main(), tetapi secara misteri gagal laksanakan, membuatkan anda bingung. Untuk memahami teka-teki ini, mari kita mendalami bidang masukan skrip Python.
Doa Hilang
Inti masalahnya terletak pada ketiadaan doa kepada fungsi utama(). Apabila jurubahasa Python menemui skrip anda, ia mencari titik masuk, yang merupakan kod awal untuk dilaksanakan. Sekiranya tiada titik masuk yang jelas, jurubahasa melangkau keseluruhan kod dan menghentikan pelaksanaan.
Menentukan Titik Masuk
Untuk menyelesaikan isu ini, anda perlu menetapkan titik masuk secara eksplisit. Terdapat dua kaedah biasa untuk mencapai ini:
import sys def random(size=16): return open(r"C:\Users\ravishankarv\Documents\Python\key.txt").read(size) def main(): key = random(13) print(key) main() # Execute the main function explicitly
if __name__ == "__main__": main()
Ini memastikan main() dilaksanakan hanya apabila modul digunakan sebagai kod permulaan, menghalang pelaksanaan yang tidak diingini dalam modul yang diimport.
Guido's Insight
Untuk mendapatkan cerapan lanjut tentang mencipta fungsi main() yang berkesan, rujuk artikel seminal 2003 Guido van Rossum (Bagaimana jika nama == "__main__": lakukan?).
Atas ialah kandungan terperinci Mengapa Fungsi `main()` Python Saya Tidak Dilaksanakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!