杰瑞科技汇

python command 能干嘛

python 命令是 Python 编程语言的入口,它是一个非常强大和灵活的工具,你可以把它想象成一个“瑞士军刀”,能做的事情非常多。

python command 能干嘛-图1
(图片来源网络,侵删)

下面我将从不同维度详细介绍 python 命令能做什么,从最基础的到一些进阶的用法。


核心功能:执行 Python 代码

这是 python 命令最基本、最核心的功能,你可以用它来运行已经写好的 Python 脚本,或者在交互式环境中直接输入代码。

运行 Python 脚本文件

这是最常见的用法,你将你的 Python 代码保存在一个以 .py 为扩展名的文件中,然后用 python 命令来执行它。

示例: 假设你有一个名为 hello.py 的文件,内容如下:

python command 能干嘛-图2
(图片来源网络,侵删)
# hello.py
print("Hello, World!")
name = "Alice"
print(f"Welcome, {name}!")

在终端或命令行中,你可以这样运行它:

# python 是命令,hello.py 是要执行的文件
python hello.py

输出:

Hello, World!
Welcome, Alice!

启动交互式解释器 (REPL)

当你直接在命令行中输入 python 并回车,会进入一个交互式环境,也称为 REPL(Read-Eval-Print Loop,读取-求值-输出循环)。

在这个环境中,你可以逐行输入 Python 代码,它会立即执行并返回结果,这对于快速测试代码片段、调试或学习 Python 语法非常有用。

python command 能干嘛-图3
(图片来源网络,侵删)

示例:

$ python
Python 3.9.7 (default, Sep 10 2025, 14:59:43) 
[GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello from REPL!")
Hello from REPL!
>>> 2 + 3
5
>>> my_list = [1, 2, 3]
>>> my_list.append(4)
>>> my_list
[1, 2, 3, 4]
>>> exit()
$ 

输入 exit() 或按 Ctrl+D 可以退出交互式环境。


进阶功能:通过命令行参数增强脚本

python 命令还支持多种参数,这些参数可以极大地增强你脚本的灵活性和功能性。

执行指定代码片段 (-c)

如果你想快速执行一小段代码,但又不想创建一个 .py 文件,可以使用 -c 选项。

示例: 直接在命令行打印当前日期和时间:

python -c "import datetime; print('The current time is:', datetime.datetime.now())"

输出:

The current time is: 2025-10-27 10:30:00.123456

这在写 shell 脚本时特别有用,可以调用 Python 的强大功能。

检查语法 (-m py_compile)

在运行脚本前,你可以先检查它的语法是否正确,而不用真正执行它,这有助于快速发现语法错误。

示例: 检查 hello.py 的语法:

python -m py_compile hello.py
  • 如果语法正确:命令会静默执行,没有输出。
  • 如果语法错误:会抛出 SyntaxError 并指出错误位置。

将脚本编译为字节码 (-B)

Python 在执行 .py 文件时,会先将其编译成字节码(.pyc 文件),以提高下次运行的启动速度,默认情况下,Python 会自动处理这些 .pyc 文件。

  • python -B your_script.py: 使用 -B 参数可以禁用生成 .pyc 文件,这在某些场景下有用,比如确保每次都从源码运行,或者清理构建产物。
  • python -b: 以优化模式运行,会忽略 .pyc 文件,强制重新编译源码,这对于确保使用最新的源码进行调试很有帮助。

直接运行模块 (-m)

这是一个非常强大的功能!-m 参数允许你将一个模块当作脚本来运行,这意味着任何模块(只要它有 __main__.py 文件或者本身是可执行的)都可以直接通过命令行启动。

示例 1:运行标准库模块 Python 的 http.server 模块可以快速创建一个简单的 Web 服务器。

# 在终端 1 运行
# -m 表示把 http.server 当作一个模块来运行
# 8000 是端口号
python -m http.server 8000

你可以在浏览器中访问 http://localhost:8000 来查看当前目录下的文件列表。

示例 2:运行第三方库模块 很多第三方库也提供了命令行接口,pip

# 这里的 pip 本身也是一个模块
python -m pip install --upgrade requests

这种方式比直接调用 pip 命令更可靠,因为它确保了你使用的是当前 Python 环境中的 pip

指定 Python 解释器版本

如果你的电脑上同时安装了 Python 2 和 Python 3(或者多个 Python 3 版本),你可以使用 python3 命令来明确指定使用 Python 3。

示例:

# 使用 Python 3 运行脚本
python3 hello.py
# 如果有多个 Python 3 版本,可以用 python3.9, python3.10 等
python3.9 hello.py

在 Linux 和 macOS 上,python 命令通常指向系统默认的 Python 2,而 python3 指向 Python 3,在 Windows 上,安装 Python 时通常会自动将 py 命令添加到环境变量,py -3 也可以用来指定 Python 3。


环境与脚本管理

使用虚拟环境

在项目开发中,为每个项目创建独立的虚拟环境是一个好习惯,可以避免不同项目之间的库版本冲突。

  • 创建虚拟环境: python -m venv myenv
  • 激活虚拟环境:
    • Windows: myenv\Scripts\activate
    • Linux/macOS: source myenv/bin/activate
  • 退出虚拟环境: deactivate

激活后,你命令行前面的提示符通常会变成 (myenv) ...,此时你运行的 pythonpip 命令都只对这个虚拟环境有效。


总结表格

命令/参数 功能描述 示例
python script.py 核心功能:执行指定的 Python 脚本文件。 python app.py
python 核心功能:启动交互式解释器 (REPL),用于交互式编程和测试。 python (然后输入代码)
python -c "..." 执行一行或一段字符串形式的 Python 代码。 python -c "print('Hi')"
python -m module 将一个模块作为脚本来运行。 python -m http.server 8000
python -m py_compile file.py 编译 Python 文件,仅检查语法,不执行。 python -m py_compile main.py
python -B script.py 运行脚本时不生成 .pyc 字节码文件。 python -B server.py
python3 在多版本 Python 环境中,明确指定使用 Python 3 解释器。 python3 manage.py runserver
python -m venv env_name 创建一个新的虚拟环境。 python -m venv project_env

python 命令是 Python 世界的基石,无论是简单的脚本执行、复杂的模块调用,还是日常的开发调试,都离不开它,掌握这些不同的用法,能让你更高效地使用 Python。

分享:
扫描分享到社交APP
上一篇
下一篇