programing

ipython 내부에서 python 스크립트 실행 중

muds 2023. 7. 20. 22:12
반응형

ipython 내부에서 python 스크립트 실행 중

경로를 지정하지 않고 내부 ipython에서 파이썬 스크립트(모듈이 아님)를 실행할 수 있습니까?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적절한 파일 검색기를 사용합니다.

매우 불쾌한 해킹으로 기본값을 무시할 수 있습니다.file_finder자신의 것으로:

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

솔직히 말해서, IPython API가 변화하는 속도라면 자신의 마법을 정의하는 것만큼 계속 작동할 가능성이 높습니다.

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

다른 파이썬 스크립트에서 파이썬 스크립트를 호출하는 가장 좋은 방법은 무엇입니까?를 참조하십시오.모듈 대 스크립트에 대한 자세한 내용을 보려면

원하는 작업을 수행할 수 있는 내장 함수 exec 파일(파일 이름)도 있습니다.

질문에 대한 정확한 대답은 아니지만 스크립트 실행이 끝날 때 ipython에 들어갈 수 있습니다.-iipython에 대한 매개 변수:

ipython -i my_script.py

스크립트가 끝나면 ipython 프롬프트로 이동하고 스크립트 변수를 사용할 수 있습니다.python -i.

Python 3.6.5의 경우

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

언급URL : https://stackoverflow.com/questions/11744181/running-python-script-inside-ipython

반응형