[python] ipython 내에서 Python 스크립트 실행

경로를 표시하지 않고 ipython 내부에서 모듈이 아닌 Python 스크립트를 실행할 수 있습니까? PYTHONPATH를 설정하려고했지만 모듈에서만 작동하는 것 같습니다. 나는 실행하고 싶다

%run my_script.py

파일이 포함 된 디렉토리에 있지 않습니다.



답변

“my_script.py”디렉토리에서 다음을 수행 할 수 있습니다.

%run ./my_script.py


답변

Ipython에서 스크립트를 실행하는 방법

import os
filepath='C:\\Users\\User\\FolderWithPythonScript'
os.chdir(filepath)
%run pyFileInThatFilePath.py

그렇게해야합니다


답변

%run마법 매개 변수가 file_finder이 (참조 실행 파일의 전체 경로를 얻기 위해 사용하는 여기를 ) 아시다시피, 현재 디렉토리에서 필요한 경우 “.py”를 추가합니다.

사용하는 파일 찾기를 지정하는 방법이있을 것 같지 않습니다 에서%run 마술,하지만 자신의 마법 명령을 정의에서 당신을 막을 수있는 건 없습니다 그에 호출 %run적절한 파일 찾기와.

A와 매우 불쾌한 해킹, 기본 무시할 수있는 file_finder자신과를 :

IPython.core.magics.execution.ExecutionMagics.run.im_func.func_defaults[2] = my_file_finder

솔직히 말해서, IPython API는 자신의 마법을 정의하는 것처럼 계속 작동 할 가능성이있는 속도로 변화하고 있습니다.


답변

파이썬에서는 모듈과 스크립트 사이에 차이가 없습니다. 스크립트와 모듈을 모두 실행할 수 있습니다. python은 문제의 파일을 찾을 수 있어야하므로 파일은 pythonpath AFAIK에 있어야합니다. python이 디렉토리에서 실행되면 디렉토리가 자동으로 pythonpath에 추가됩니다.

다른 Python 스크립트에서 Python 스크립트를 호출하는 가장 좋은 방법은 무엇입니까?를 참조하십시오 . 모듈 대 스크립트에 대한 자세한 정보는

원하는 것을 수행하는 내장 함수 execfile (filename)도 있습니다.


답변

Python 3.6.5 용

import os
os.getcwd()
runfile('testing.py')


답변