How To Start Python In Terminal
For many tasks—automation scripts, quick debugging, environment troubleshooting—the Python interactive shell remains indispensable. Experienced developers reach for the terminal not only for speed but for transparency. IDEs can conceal too much. The terminal exposes everything. Here’s how professionals handle Python from the command line, including OS flavor nuances and practical usage patterns.
Launching the Terminal: Platform Variants
Windows: Win + R
→ cmd
PowerShell (powershell.exe
) and Windows Terminal also suffice. Watch out for PATH misconfigurations—common if both Python 2 and 3 are installed.
macOS: Cmd + Space
→ Terminal
Linux: Ctrl + Alt + T
or search “Terminal” in the application menu.
Note: Some distributions alias python
to Python 2.x for backward compatibility.
Verifying Python Installation
Check version and invocation method:
python --version
python3 --version
Sample Output:
Python 3.11.2
If you receive:
'python' is not recognized as an internal or external command,
operable program or batch file.
then Python is missing from your PATH or not installed.
Action: Install from python.org/downloads, or use your system package manager:
# macOS (Homebrew)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install python@3.11
# Debian/Ubuntu
sudo apt-get install python3
Note: On macOS and most recent Linux distributions, only python3
is guaranteed to point to Python 3.x.
Entering the Python Interactive Shell
Start the REPL (Read-Eval-Print-Loop):
python
# or
python3
Expect:
Python 3.11.2 (main, May 15 2024, 08:44:21)
[GCC 13.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Pro tip: For named virtual environments (created via python3 -m venv .venv
), activate before launching Python to avoid dependency bleed. Shell prompt usually updates—(.venv)
prefix confirms environment is active.
Interactive Usage: Quick Testing
>>> import sys
>>> sys.version
'3.11.2 (main, May 15 2024, 08:44:21) \n[GCC 13.2.0]'
>>> print("Connected to Python shell")
Connected to Python shell
>>> for i in range(2): print(i)
0
1
Multi-line input triggers the ...
continuation prompt:
>>> for i in range(2):
... print("i =", i)
...
i = 0
i = 1
Note: exit()
and quit()
are convenience aliases. For scripting or piped input, prefer Ctrl + D
(Unix/macOS) or Ctrl + Z
+ Enter
(Windows).
Running Python Scripts Directly
Rather than typing code interactively, save routines as standalone .py
files.
Example:
hello.py
import platform
print("Host system:", platform.system())
Run:
python3 hello.py
or, on distributions where python
maps to the appropriate interpreter:
python hello.py
Gotcha: Double-check shebang (#!/usr/bin/env python3
) in scripts if execution fails on Unix-like systems. Permissions (chmod +x hello.py
) may also be relevant.
Environment-Specific Tips
-
Multiple Python Versions:
Usepy
launcher on Windows to select versions:py -3.10 script.py
On Unix, identify with
which python3.11
. -
REPL Alternatives:
ipython
offers richer introspection and history, but has heavier dependencies. -
Side Note:
Native code modules (C extensions) may not load correctly if a mismatched Python interpreter or venv is invoked.
Known Issue
Python invoked as python
may unexpectedly call Python 2.x despite installing Python 3.x. Always verify before scripting automation or deploying cron jobs.
In summary, invoking Python from the terminal is foundational: it’s not merely for beginners, but remains fastest for ad-hoc analysis, focusing on the essentials without noise. For repeatability and clarity, always specify full version paths for anything production-adjacent. IDEs can supplement, but the shell remains the canonical interface for Python professionals.