Có vẻ như họ đã hủy trong Python 3 tất cả các cách dễ dàng để tải nhanh tập lệnh bằng cách xóa execfile()
Có một sự thay thế rõ ràng tôi đang thiếu?
%run script_name
hoạt động với tất cả các phiên bản Python.
imp
là importlib
(phải nhập): importlib.reload(mod_name)
nhập và thực thi mod_name
.
runfile()
vì tôi cần chạy một kịch bản Python thực thi trong không gian tên của chính nó (trái ngược với thực thi trên không gian tên gọi ). Ứng dụng của tôi: thêm thư mục của kịch bản gọi đến đường dẫn hệ thống ( sys.path
) bằng cách sử dụng __file__
thuộc tính: nếu chúng tôi sử dụng execfile()
hoặc tương đương bằng Python 3 ( exec(open('file.py').read())
) kịch bản bao gồm được chạy trong không gian tên gọi và do đó __file__
giải quyết cho gọi tên tập tin.
reload
đã trở lại, nhưimp.reload
, kể từ 3.2.