学习 Python,第一步并不是背语法,而是理解计算机如何执行程序,并搭建一套稳定、可复现的开发环境。本篇笔记复盘程序执行、AI 编程工具的局限,以及 Conda、虚拟环境和 JupyterLab 的基本用法。
一、程序是怎样执行的
计算机不会猜测人的意图,只会按照明确的指令执行操作。理解程序可以从三个要素入手:
存储:把程序和数据保存在内存或磁盘中;
指令:告诉计算机要完成什么操作;
顺序:规定各条指令执行的先后关系。
name = "学员"print("你好," + name)
运行时,Python 先把字符串保存起来,并用变量名 name 指向它;随后读取 name,完成字符串拼接并输出结果。如果在赋值前使用变量,就会出现 NameError:
因此,看到变量相关报错时,首先应向上检查变量是否已经定义。初学阶段还要特别注意中英文符号混用,例如中文括号 () 不能替代英文括号 ()。
二、Python 在技术栈中的位置
Python 并不是所有场景下性能最强的语言,但它语法简洁、生态完善,常用于自动化脚本、数据分析、人工智能和快速原型开发。例如,批量重命名文件、分析 CSV 数据通常适合使用 Python;操作系统内核、追求极致性能的游戏引擎则更常使用 C、C++ 或 Rust;浏览器交互主要由 JavaScript 完成。
AI 时代学习 Python 的价值也没有降低。生成式工具可以快速提供代码草稿,但需求澄清、结果判断、异常处理和最终验收仍要由人负责。学习 Python 的目标不只是“手写每一行代码”,更是能够看懂、修改并验证工具生成的程序。
三、AI 生成代码的四类常见问题
工具生成的代码“看起来合理”并不代表可以直接交付,常见问题包括:
幻觉 API:调用不存在的函数、参数或软件接口;
忽略边界:没有处理空值、零除、文件不存在等情况;
逻辑错误:代码能够运行,但结果与需求不符;
难以维护:变量命名随意、缺少说明,后续修改困难。
例如,下面的函数对纯数字列表有效,但遇到 None 或字符串时会报错:
def count_positive(values): return len([x for x in values if x > 0])
在使用前需要明确:输入是否只能包含数字?空列表怎样处理?非法元素应该报错还是跳过?一个实用原则是:工具负责提速,人负责正确。
四、把模糊需求变成可验收规格
“写一个计算平均分的程序”还不是完整需求。真正动手前,应明确:
输入是什么类型,是否允许空列表;
输出是整数还是浮点数,保留几位小数;
遇到字符串、None 等非法数据时怎样处理;
哪些正常值、边界值和异常值必须通过测试。
assert calculate_average([80, 90, 100]) == 90assert calculate_average([59.5, 60]) == 59.75
验收代码时,可以依次使用正常输入、边界输入和异常输入,将实际结果与预期结果比较。发现差异后,根据报错类型和行号定位问题,修改后重新运行全部用例,避免修复一个问题又引入新的错误。
五、选择合适的 Python 环境
常见学习环境有三类:Windows 本地、macOS 本地和云端 Notebook。本地环境性能稳定、文件管理方便,适合长期学习;云端环境不需要安装软件,适合设备受限或临时练习,但依赖网络,也要注意文件持久化和数据安全。
本地学习可以使用 Anaconda 或更轻量的 Miniconda。安装后建议通过 Anaconda Prompt 或初始化完成的终端使用 Conda,不必为了省一步操作而随意把多个 Python 路径全部加入系统 PATH,以免不同版本互相冲突。先验证:
conda --versionpython --version
六、虚拟环境与 JupyterLab
不同项目可能依赖不同版本的软件包。若全部安装到全局环境,更新一个项目的依赖可能导致另一个项目无法运行。因此应养成“一门课程或一个项目,对应一个独立环境”的习惯。
# 创建 Python 3.10 环境conda create -n psit-alpha python=3.10 -y# 激活环境conda activate psit-alpha# 安装 JupyterLab 和内核组件conda install jupyterlab ipykernel -y# 将环境注册为 Jupyter 内核python -m ipykernel install --user \ --name psit-alpha \ --display-name "Python (psit-alpha)"# 启动 JupyterLabjupyter lab
进入 JupyterLab 后,新建 Notebook,选择刚注册的内核并运行:
import sysprint("Jupyter 已就绪")print(sys.executable)
sys.executable 可以显示当前内核实际使用的 Python 路径,是排查“终端安装了库,但 Notebook 无法导入”的重要依据。常用快捷键包括:Shift + Enter 运行并进入下一单元格,Ctrl + Enter 只运行当前单元格,命令模式下按 A、B 分别在上方、下方插入单元格。
七、常见故障排查
遇到问题时不要反复重装,应先读取完整报错并检查命令来源:
| |
|---|
| 使用 Anaconda Prompt,检查 Conda 是否安装、终端是否初始化 |
python | Windows 使用 Get-Command python,其他终端使用 which python |
| 检查 Jupyter 内核与安装依赖的环境是否一致 |
| |
| |
八、环境验收清单
环境搭建完成后,至少确认以下五点:
conda --version 能输出版本号;
jupyter lab 可以正常启动;
Notebook 能运行 print("OK");
右上角显示的内核与创建的环境一致;
sys.executable 指向该虚拟环境中的 Python。
仅仅“安装完成”不等于环境可用,能够重复启动、运行并确认解释器路径,才算真正通过验收。
总结
Python 入门阶段最重要的不是记住多少命令,而是形成正确的工作习惯:理解程序按照存储、指令和顺序运行;把模糊需求转化为可测试的规格;对 AI 生成代码进行边界检查和结果验收;通过虚拟环境隔离项目依赖;最后用版本、内核、解释器路径和实际输出验证环境。
当这些习惯建立起来后,后续学习变量、容器、条件、循环和函数时,遇到问题就不再只是“试着改代码”,而是能够沿着执行顺序、数据状态和运行环境有依据地排查。