Если я выполню волшебную команду %run file, запустится ли сценарий как основной?Python

Программы на Python
Ответить
Anonymous
 Если я выполню волшебную команду %run file, запустится ли сценарий как основной?

Сообщение Anonymous »

У меня есть файл .ipynb, и я хочу импортировать из него только определенные функции в другой файл .ipynb.
если я использую:

Код: Выделить всё

if __name__ == "__main__":
будет ли сценарий запускать то, что находится под этим оператором if, когда я вызываю:

Код: Выделить всё

%run file
Например, у меня есть:

Код: Выделить всё

def someFuncToUseInOtherFile(df):
x = do some process
return x
def someFuncToUseInDifferentFile():
y = do some process
return y

#code not to run when script called from other file
if __name__ == "__main__":
df = load dataframe
x = ....

Код: Выделить всё

#other file
%run file
в настоящее время это запускает весь скрипт, но я просто хочу импортировать одну функцию, а не обе.
Я пробовал импортировать напрямую как файл .py, в том числе с помощью sys.path.append:

Код: Выделить всё

from file import someFuncToUseInOtherFile --> error

import sys
sys.path.append(folder path)
from file import someFuncToUseInOtherFile --> error
есть ли способ обойти это?


Подробнее здесь: https://stackoverflow.com/questions/798 ... pt-as-main
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»