파이썬 쉘에 탭 완료를 추가하려면 어떻게합니까?
-
05-07-2019 - |
문제
Django 응용 프로그램을 사용하여 시작할 때 python manage.py shell
, 나는 InteractiveConsole Shell을 얻습니다 - 탭 완료 등을 사용할 수 있습니다.
Python 2.5.1 (r251:54863, Apr 15 2008, 22:57:26)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
Python 통역사를 사용하여 시작할 때 python
, 탭 완료를 제공하지 않습니다.
누군가가 대화 형 콘솔을 제공하기 위해 Django가 무엇을하고 있는지 말해 줄 수 있습니까?
해결책
나는 그것을 할 방법을 찾았을 것입니다.
파일 .pythonrc를 만듭니다
# ~/.pythonrc
# enable syntax completion
try:
import readline
except ImportError:
print("Module readline not available.")
else:
import rlcompleter
readline.parse_and_bind("tab: complete")
그런 다음 .bashrc 파일에서 추가하십시오
export PYTHONSTARTUP=~/.pythonrc
그것은 효과가있는 것 같습니다.
다른 팁
나는 Django가 같은 일을한다고 생각합니다 https://docs.python.org/library/rlcompleter.html
정말 좋은 대화 형 통역사를 원한다면http://ipython.scipy.org/.
레코드의 경우, 이것은 자습서에서 다루어집니다. http://docs.python.org/tutorial/interactive.html
나는 ptpython을 사용합니다.https://github.com/jonathanslenders/ptpython/
Ptpython은 훌륭한 도구 자동 완성 쉘 CMD입니다. Ptpython을 설치하는 것은 매우 쉽고 사용 PIP 도구를 사용합니다
PIP 설치 PTPYTHON
그리고 Django Shell의 경우, 당신은 다음과 같은 django env를 가져와야합니다.
OS 가져 오기
os.environ.setdefault ( "django_settings_module", "testweb.settings")
날 믿어, 이것은 당신에게 가장 좋은 방법입니다 !!!
Python3에 상자가있는 것처럼 보입니다!
Python3 에서이 기능은 기본적으로 활성화됩니다. 내 시스템에는 모듈이 없었습니다 readline
설치. 나는 만자로에있다. 다른 Linux 배포판 (Elementary, Ubuntu, Mint) 에서이 탭 완료 문제에 직면하지 않았습니다.
후에 pip
모듈 설치, 가져 오는 동안 다음과 같은 오류가 발생했습니다.
ImportError: libncursesw.so.5: cannot open shared object file: No such file or directory
이것을 해결하기 위해 나는
cd /usr/lib
ln -s libncursesw.so libncursesw.so.5
이로 인해 가져 오기 오류가 해결되었습니다. 그리고 그것은 또한 생성/변경없이 Python Repl에서 탭 완료를 가져 왔습니다. .pythonrc
그리고 .bashrc
.
나는 더 완벽한 것을 만듭니다 .pythonrc.py
, 당신은 그것이 유용하다는 것을 알 수 있습니다 :https://gist.github.com/guyskk/6f352E3D17135B470BF3D982C80CC01
Windows10 쉘에 대한 수정 :
- PIP PYREADLINE을 설치하십시오
- PIP 설치 IPYTHON [SHELL