Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya Boleh Menggantikan `execfile()` Python 2 dalam Python 3?

Bagaimanakah saya Boleh Menggantikan `execfile()` Python 2 dalam Python 3?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-02 02:05:10475semak imbas

How Can I Replace Python 2's `execfile()` in Python 3?

Alternatif untuk execfile dalam Python 3

Penyingkiran execfile() oleh Python 3 telah menyebabkan ramai tertanya-tanya bagaimana untuk memuatkan skrip dengan pantas. Walaupun execfile() mungkin hilang, pilihan alternatif wujud.

Penyelesaian:

Dokumentasi mengesyorkan menggunakan fungsi exec() dengan kandungan fail yang diluluskan sebagai hujah:

exec(open("filename").read())  # Replaces execfile("filename")

Penjelasan:

execfile() menghuraikan dan melaksanakan fail, manakala exec() melaksanakan rentetan. Dengan membaca kandungan fail ke dalam rentetan dan menghantarnya ke exec(), kami mencapai kesan yang sama seperti execfile().

Pertimbangan Tambahan:

  • Kaedah ini mengekalkan ruang nama setempat semasa pelaksanaan, tidak seperti execfile(), yang mencipta yang baharu.
  • Ia penting untuk ambil perhatian bahawa teknik ini boleh memperkenalkan risiko keselamatan, jadi gunakannya hanya apabila perlu dan ambil langkah berjaga-jaga yang sewajarnya.

Bacaan Lanjut:

  • [What's Baharu Dalam Python 3.0](https://docs.python.org/3/whatsnew/3.0.html)
  • [execfile](https://docs.python.org/2/librar y/functions.html#execfile)
  • [exec](https://docs.python.org/3/library/functions.html#exec)

Atas ialah kandungan terperinci Bagaimanakah saya Boleh Menggantikan `execfile()` Python 2 dalam Python 3?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn