学完后你至少应该能做到:

pip 是否可用.py 脚本Python 是一种通用编程语言,特点是:
.py 文件你可以把 Python 先理解成两部分:
python3当你写了一个 hello.py 文件后,真正执行它的是解释器,而不是这个文件自己会“跑起来”。
在终端执行下面几个命令:
python3 --version
which python3
pip3 --version
如果你看到版本号,说明系统里已经有可用的 Python。
常见现象和含义:
python3 --version 输出 Python 3.x.x:说明 Python 3 可用which python3 输出一个路径:说明终端能找到解释器pip3 --version 输出版本和路径:说明包管理工具可用为什么很多教程写 python,而这里更推荐 python3:
python 可能不存在python 可能仍然指向 Python 2python3 含义更明确,入门阶段不容易混淆如果你的环境里 python 也能直接用,后续完全可以统一一种命令风格,但前提是你知道自己当前调用的是哪个版本。
刚开始不要把文件乱丢到桌面。建议从一开始就养成目录习惯:
python-demo/
|-- .venv/
|-- examples/
| |-- hello_python.py
| `-- cli_args_demo.py
`-- README.md
目录说明:
.venv/:虚拟环境目录,用来隔离项目依赖examples/:示例代码README.md:说明这个目录是做什么的本章已经按这个思路提供了两个示例文件,放在当前目录的 examples 下。
文件:(./examples/hello_python.py)
print("你好,Python")course_name = "Python 开发环境与运行方式"
lesson_index = 1
is_ready = Trueprint(f"当前章节:第 {lesson_index} 章")
print(f"课程主题:{course_name}")
print(f"环境是否准备完成:{is_ready}")
运行命令:
python3 examples/hello_python.py
第 1 行:
print("你好,Python") 会把括号里的内容输出到终端print 是 Python 最常见的输出函数第 3 行:
course_name = "Python 开发环境与运行方式" 是变量赋值course_name 是变量名第 4 行:
lesson_index = 1 定义了一个整数变量第 5 行:
is_ready = True 定义了一个布尔值True 和 False 首字母必须大写第 7 到 9 行:
f"..." 这种格式化字符串写法{} 里的变量会在输出时被替换成实际值这个文件虽然很简单,但已经包含了入门最关键的几件事:
.py 结尾命令:
python3
进入后你会看到提示符,然后可以直接输入:
print("hello")
2 + 3
name = "Alice"
print(name)
这种方式适合:
不适合:
退出方式通常是:
Ctrl + DCtrl + Z 后回车命令:
python3 examples/hello_python.py
这是最常见、最正式的入门方式。你把代码写进文件,再由 Python 解释器执行这个文件。
这个命令可以拆成两部分理解:
python3:解释器程序examples/hello_python.py:要执行的脚本文件路径文件:(./examples/cli_args_demo.py)
import sys
from pathlib import Path
def build_message(argv: list[str]) -> str:
script_name = Path(argv[0]).name
args = argv[1:] if not args:
return f"脚本 {script_name} 已启动,但你还没有传入任何参数。" joined_args = ", ".join(args)
return f"脚本 {script_name} 收到 {len(args)} 个参数:{joined_args}"
def main() -> None:
print("这是一个命令行参数示例。")
print(build_message(sys.argv))
if __name__ == "__main__":
main()
运行命令:
python3 examples/cli_args_demo.py
python3 examples/cli_args_demo.py apple banana 2026
第 1 行:
import sys 表示导入 Python 标准库里的 sys 模块sys.argv 用来获取命令行参数第 2 行:
from pathlib import Path 导入 PathPath 是处理文件路径时非常常用的工具第 5 行:
def build_message(argv: list[str]) -> str: 定义了一个函数build_messageargv: list[str] 表示参数 argv 预期是字符串列表-> str 表示这个函数会返回字符串第 6 行:
argv[0] 通常是脚本本身的路径Path(argv[0]).name 的作用是只取文件名部分argv[0],有时会看到完整路径,不够直观第 7 行:
argv[1:] 是切片写法,意思是“从第 2 个元素取到最后一个”第 9 到 10 行:
if not args: 表示如果参数列表为空第 12 行:
", ".join(args) 会把列表中的字符串拼成一个大字符串["apple", "banana"] 会变成 "apple, banana"第 16 到 18 行:
main() 是很多脚本里常见的入口函数最后两行:
if __name__ == "__main__": 是 Python 脚本里非常重要的惯用写法main() 会执行你现在不需要把它背下来,但必须知道它常见、重要,而且以后会反复看到。
python、python3、pip、pip3 是什么关系可以先这样理解:
python3:运行 Python 3 解释器pip3:给 Python 3 安装第三方包常见命令:
python3 --version
pip3 --version
python3 -m pip --version
为什么很多人更推荐:
python3 -m pip install 包名
原因是这能更明确地表示:
python3 对应的 pip例如:
python3 -m pip install requests
这条命令的意思不是“必须这样写”,而是“这样更稳,更容易少踩坑”。
很多初学者会直接把所有包装到系统 Python 里,短期看没问题,长期一定乱。
虚拟环境的作用是:
你可以把它理解成:
在项目目录执行:
python3 -m venv .venv
这条命令的意思:
python3 -m venv:调用 Python 内置的 venv 模块.venv:在当前目录创建一个叫 .venv 的虚拟环境文件夹macOS / Linux:
source .venv/bin/activate
Windows PowerShell:
.venvScriptsActivate.ps1
Windows CMD:
.venvScriptsactivate.bat
激活后,终端前面通常会出现类似 (.venv) 的提示,表示你正在使用这个项目自己的 Python 环境。
deactivate
python -m pip install requests
注意这里很多人会用 python 而不是 python3,原因是:
python 通常已经指向虚拟环境内部的解释器python -m pip 反而更自然也就是说:
python3python 指向的是当前虚拟环境对于入门者,建议每次都按这个顺序做:
.py 文件python 或 python3 运行脚本示例:
mkdir python-demo
cd python-demo
python3 -m venv .venv
source .venv/bin/activate
python --version
python examples/hello_python.py
如果你还没有 examples/hello_python.py,就先自己创建一个再运行。
command not found: python3说明系统里没有找到 python3 命令,常见原因:
No such file or directory说明你给出的文件路径不对。重点检查:
例如你在错误目录执行:
python3 examples/hello_python.py
就可能找不到文件。
ModuleNotFoundError说明代码里导入了某个模块,但当前环境没有安装。
常见排查顺序:
.py 文件没反应入门阶段不要依赖双击运行。优先使用终端命令:
python3 文件名.py
这样更清楚,也更容易看到报错信息。
这一章你真正要拿下的不是某一行语法,而是下面这套基本能力:
python3 运行 .py 文件pip 是装依赖的,不是运行代码的如果这些已经熟悉,下一章再进入变量、数据类型、字符串、列表、字典这些语法内容,会顺很多。