Podczas uruchamiania aplikacji django za pomocą python manage.py shell
otrzymuję powłokę InteractiveConsole - mogę używać uzupełniania tabulatorów itp.
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)
Kiedy uruchamiasz interpreter języka Python przy użyciu python
, nie oferuje on uzupełniania tabulatorami.
Czy ktoś może mi powiedzieć, co robi django, aby dać mi interaktywną konsolę, lub co muszę zrobić, aby uruchomić konsolę interaktywną bez aplikacji django?
python
shell
interpreter
ashchristopher
źródło
źródło
Odpowiedzi:
Może znalazłem sposób, żeby to zrobić.
Utwórz plik .pythonrc
następnie w swoim pliku .bashrc dodaj
To wydaje się działać.
źródło
source ~/.bashrc
za każdym razem, aby to działało przed uruchomieniem interpretera Pythona. Jakieś wskazówki?.bashrc
i.bash_profile
zgodnie z sugestią na dole tej strony: joshstaiger.org/archives/2005/07/bash_profile_vs.html Zawiera również informacje o różnicach między nimi. To może nie rozwiązać problemu, ale może pomóc./etc/bashrc
zamiast tego wstawić~/.bashrc
.Myślę, że django robi coś takiego jak https://docs.python.org/library/rlcompleter.html
Jeśli chcesz mieć naprawdę dobrego interaktywnego interpretera, spójrz na IPython .
źródło
Dla przypomnienia, jest to omówione w samouczku: http://docs.python.org/tutorial/interactive.html
źródło
Używam ptpython. https://github.com/jonathanslenders/ptpython/
ptpython to wspaniałe narzędzie do autouzupełniania powłoki cmd. instalacja ptpython jest bardzo łatwa, użyj narzędzia pip
a dla powłoki django, powinieneś zaimportować django env, w ten sposób
Zaufaj mi, to najlepsza droga do Ciebie !!!
źródło
poprawka dla powłoki windows10:
źródło
Wygląda na to, że python3 ma to po wyjęciu z pudełka!
źródło
W Python3 ta funkcja jest domyślnie włączona. Mój system nie miał
readline
zainstalowanego modułu . Jestem na Manjaro. Nie spotkałem się z tym problemem z uzupełnianiem zakładek w innych dystrybucjach Linuksa (elementary, ubuntu, mint).Po
pip
zainstalowaniu modułu podczas importu wyrzucał następujący błąd-ImportError: libncursesw.so.5: cannot open shared object file: No such file or directory
Aby to rozwiązać, pobiegłem
cd /usr/lib ln -s libncursesw.so libncursesw.so.5
To rozwiązało błąd importu. I przyniosło również uzupełnianie tabulatorów w replice Pythona bez tworzenia / zmian
.pythonrc
i.bashrc
.źródło
Tak. Jest wbudowany w 3.6.
fernanr @ gnuruwi ~ $ python3.6 Python 3.6.3 (domyślnie, 10 kwietnia 2019, 14:37:36) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] w systemie Linux Wpisz „help”, „copyright „,„ kredyty ”lub„ licencja ”, aby uzyskać więcej informacji.
źródło
Dla starszych wersji (2.x) powyższy skrypt działa jak urok :)
źródło