import numpy as np
파이썬 인터프리터를 실행할 때마다 거의 매번 타이핑하는 것을 발견했습니다 . numpy를 자동으로 가져 오도록 python 또는 ipython 인터프리터를 어떻게 설정합니까?
import numpy as np
파이썬 인터프리터를 실행할 때마다 거의 매번 타이핑하는 것을 발견했습니다 . numpy를 자동으로 가져 오도록 python 또는 ipython 인터프리터를 어떻게 설정합니까?
답변:
환경 변수 PYTHONSTARTUP를 사용하십시오 . 공식 문서에서 :
읽을 수있는 파일의 이름 인 경우 첫 번째 프롬프트가 대화 형 모드로 표시되기 전에 해당 파일의 Python 명령이 실행됩니다. 파일은 대화 형 명령이 실행되는 동일한 네임 스페이스에서 실행되므로 여기에 정의되거나 가져온 개체를 대화 형 세션에서 자격없이 사용할 수 있습니다.
따라서 import 문으로 python 스크립트를 만들고 환경 변수를 지정하십시오. 그렇긴하지만 '명시적인 것이 항상 암시적인 것보다 낫다'는 것을 기억하십시오. 따라서 프로덕션 스크립트에 대해이 동작에 의존하지 마십시오.
env PYTHONSTARTUP="~/.startup.py"
나를 위해 작동하지 않았다
export PYTHONSTARTUP=~/.python_shell_startup.py
변수 설정에 대한 참고 사항 입니다.
ipython의 경우이를 달성하는 두 가지 방법이 있습니다. 둘 다에있는 ipython의 구성 디렉토리를 포함 ~/.ipython
합니다.
~/.ipython/profile_default/startup/
간단하게하기 위해 옵션 2를 사용 합니다. 디렉토리에 .py
또는 .ipy
파일을 배치 ~/.ipython/profile_default/startup
하면 자동으로 실행됩니다. 따라서 import numpy as np
간단한 파일에 간단하게 배치 할 수 있으며 ipython 프롬프트의 네임 스페이스에 np가 있습니다.
옵션 2는 실제로 사용자 지정 프로필과 함께 작동하지만 사용자 지정 프로필을 사용하면 특정 경우에 따라 시작 요구 사항 및 기타 구성을 변경할 수 있습니다. 당신이 거라고 그러나, 언제나 처럼이 np
모든 수단이 시작 디렉토리에 넣어하여 다음에 사용할 수 있습니다.
ipython 구성에 대한 자세한 내용은. 문서는 훨씬 더 자세한 설명이 있습니다.
~/.config/ipython/profile_default/startup/
과 같습니다.~/.ipython/profile_default/startup/
다음과 같이 ~ / .startup.py 파일을 사용합니다.
# Ned's .startup.py file
print("(.startup.py)")
import datetime, os, pprint, re, sys, time
print("(imported datetime, os, pprint, re, sys, time)")
pp = pprint.pprint
그런 다음 PYTHONSTARTUP = ~ / .startup.py를 정의하면 Python이 쉘을 시작할 때이를 사용합니다.
print 문이 있으므로 셸을 시작하면 적용되고 있으며 이미 가져온 내용이 있다는 알림이 표시됩니다. pp
바로 가기가 너무 정말 편리합니다 ...
~
대체 할 때가 언제인지 알 수 $HOME
없지만이 상대 경로 대신 MacOS, fish 및 python3에서 절대 경로를 사용해야했습니다.
같은 사용자 정의 시작 스크립트를 만드는 동안 ravenac95이 제안 대부분의 경우에 가장 일반적인 대답은, 그것은 당신이 사용하려는 상황에서 작동하지 않습니다 from __future__ import X
. 때때로 Python 2.x에서 작업하지만 최신 분할을 사용하려면 한 가지 방법 만 있습니다. 프로필을 만든 후에는 profile_default
(Ubuntu의 경우이 위치에 있음 ~/.ipython/profile_default
)을 편집 하고 아래에 다음과 같은 내용을 추가합니다.
c.InteractiveShellApp.exec_lines = [
'from __future__ import division, print_function',
'import numpy as np',
'import matplotlib.pyplot as plt',
]
Linux에서 허용되는 답변에 대한 더 간단한 대안으로 :
예를 들어 alias pynp='python -i -c"import numpy as np"'
~ / .bash_aliases 파일에 별칭을 정의 하십시오. 그런 다음에서 python + numpy를 호출 pynp
할 수 있으며 python
. Python 스크립트의 동작은 그대로 유지됩니다.
PYTHONSTARTUP
대화 형 모드 에서만 호출 되므로 Python 스크립트의 동작은 어쨌든 그대로 유지됩니다. 파일 참조를 사용하여 별칭을 만들 수도 있습니다.alias pynp='PYTHONSTARTUP="~/.startup.py" python'
으로 ravenac95는 그의 언급 대답 , 당신도 사용자 정의 프로파일을 만들거나 기본 프로필을 수정할 수 있습니다. 이 답변은 import numpy as np
자동으로 필요한 Linux 명령에 대한 빠른보기입니다 .
라는 사용자 지정 프로필을 사용 numpy
하려면 다음을 실행합니다.
ipython profile create numpy
echo 'import numpy as np' >> $(ipython locate profile numpy)/startup/00_imports.py
ipython --profile=numpy
또는 항상 numpy를 가져 오도록 기본 프로필을 수정하려는 경우 :
echo 'import numpy as np' >> $(ipython locate profile default)/startup/00_imports.py
ipython
프로필 구성에 대한 자세한 내용 은 IPython 구성 자습서 를 확인하십시오 . .ipython/profile_default/startup/README
시작 디렉토리가 작동하는 방식을 이해하려면를 참조하십시오 .