Если я выполню волшебную команду %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 --> module not found error

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


Подробнее здесь: https://stackoverflow.com/questions/798 ... -if-so-how
Ответить

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

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

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

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

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