The Python interpreter is a versatile tool for executing Python code, and it's essential to understand how to invoke it effectively, especially with the latest Python 3.12.1 version.
Installation and Execution
Unix Systems
On Unix-based systems, Python is typically installed at `/usr/local/bin/python3.12`. To start the interpreter, ensure `/usr/local/bin` is in your Unix shell’s search path and type:
```sh
python3.12
```
However, the installation directory might vary, so consult your Python administrator if you encounter any issues. Common alternatives include `/usr/local/python`.
Windows Systems
For Windows users, if Python is installed via the Microsoft Store, the `python3.12` command will be available. Additionally, with the `py.exe` launcher, you can use:
```sh
py
```
There are numerous ways to launch Python on Windows, detailed under environment variable settings in the official documentation (`setting-envvars`).
Exiting the Interpreter
To exit the interpreter, you can:
- Type an end-of-file character:
- Unix: `Control-D`
- Windows: `Control-Z + Enter`
- Or use the built-in command:
```python
quit()```
Line-Editing Features
Python's interpreter supports interactive editing, history substitution, and code completion if the GNU Readline library is available. To check for command line editing support, press `Control-P` at the prompt:
- If it beeps, the feature is supported.
- If `^P` is echoed or nothing happens, only backspace editing will be available.
Operating Modes
Interactive Mode
In this mode, commands are input directly from the tty device. The interpreter prompts for the next command with `>>>` and uses `...` for continuation lines:
```sh
$ python3.12
Python 3.12 (default, April 4 2022, 09:25:04)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
```
For example:
```python
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
```
Script Execution
To execute a script, provide the script name as an argument:
```sh
python3.12 script.py
```
Alternatively, to execute a command directly, use:
```sh
python3.12 -c 'command'
```
For executing Python modules:
```sh
python3.12 -m module
```
To enter interactive mode after running a script:
```sh
python3.12 -i script.py
```
Argument Passing
Arguments passed to the script are stored in the `sys.argv` list. For example:
```python
import sys
print(sys.argv)
```
- `sys.argv[0]` is the script name or `-` for standard input.
- For `-c` or `-m` options, `sys.argv[0]` is set to `-c` or the full module name, respectively.