Здається, вони скасували в Python 3 весь простий спосіб швидко завантажити сценарій, видаливши execfile()
Чи є явна альтернатива, якої я пропускаю?
%run script_nameпрацює з усіма версіями Python.
impє importlib (яке необхідно імпортувати): importlib.reload(mod_name)імпортує та виконує mod_name.
runfile()оскільки мені потрібно було запустити сценарій Python, який виконується у власному просторі імен (на відміну від виконання на виклику простору імен). Моя програма: додайте каталог виклику скрипта до системного шляху ( sys.path) за допомогою __file__атрибута: якщо ми використовуємо execfile()або його еквівалент у Python 3 ( exec(open('file.py').read())), включений скрипт запускається у просторі імен виклику і, таким чином, __file__вирішується до імені виклику .
reloadповертається, якimp.reload, з 3.2.