Rozdział 3 · Twój pierwszy program w Python
Terminal, shell i Python REPL — to różne rzeczy
Jedną z najczęstszych przyczyn zamieszania u nowicjuszy są te trzy pojęcia. Omówmy je raz na zawsze.
Już widzieliśmy słowa "terminalny" i "shell" w rozdziale 2 — ale żeby poruszać się pewnie Ponadto ważne jest, aby ostatecznie utrwalić to rozróżnienie i dodać do niego trzecie pojęcie: siebie Python REPL. Zamieszanie między tymi trzema rzeczami jest jedną z najczęstszych przyczyn, dla których początkującym wydaje się, że „zespół łańcuch znaków” to coś dużego i zagmatwanego.
Trzy różne rzeczy
- Terminal (terminal) to okno aplikacji, w którym Wejście i wyjście tekstu. Sam terminal niczego „nie rozumie”
- Shell (powłoka poleceń) — program W TERMINALU, który
czyta twoje polecenia systemu operacyjnego:
cd,ls, uruchamianie programów. Bash, Zsh, PowerShell, cmd.exe, Fish, PySH każdy z nich jest shell. - Python REPL (znany też jako Python Shell) to osobny program
(sam interpreter Python interaktywny), który URUCHAMIASZ z shell
Drużyna
python. Ma własne zaproszenie>>>, i rozumie już nie polecenia systemu operacyjnego, lecz kod na Python.
Dlaczego wszyscy mylą "shell" i "Shell"
Istnieje niefortunny historyczny zbieg okoliczności: tryb interaktywny Python często nazywany jest w dokumentacji anglojęzycznej „Python Shell”
$ lub > zazwyczaj oznacza typowy shell systemu operacyjnego, a >>> jest dokładnie Python REPL.Jak rozróżnić za pomocą oka
| Normalna shell (Bash/PowerShell/...) | Python REPL | |
|---|---|---|
| Zaproszenie | $, % lub > | >>> |
| rozumie | Polecenia systemu operacyjnego: cd, ls, uruchamianie programów | Kod na Python: wyrażenia, przypisania, wywołania funkcji |
| Jak dostać się | Otwórz terminal — jesteś już wewnątrz | Wybrać python w środku shell |
| Jak się wylogować | Zamknąć terminal lub exit | exit() czy Ctrl+D / Ctrl+Z |
Sprawdź sam
Otwórz terminal i wpisz
python. Zaproszenie zmieni się z zwykłego (na przykład, $) do >>> jest pewnym znakiem, że właśnie przeszedłeś z systemu operacyjnego shell na Python REPL. Dial exit()wrócić.