很多零基础读者在自学 Python 时,第一步往往不是被语法难倒,而是卡在了环境配置上:官网版本那么多该下载哪一个?安装完之后python命令为什么提示找不到?代码到底写在哪里?好不容易跑通了print("Hello World"),又不知道下一步该练什么。
这篇文章就是为 Python 完全零基础的读者准备的“第一课合集”。我会从 Python 环境配置讲起,再到 VSCode 编辑器搭建,最后用一个非常适合新手的「海龟绘图」模块,带大家写出第一个真正有画面感的 Python 程序。整套内容不需要任何编程基础,跟着一步一步操作即可。
1. 为什么 Python 适合作为第一门编程语言
1.1 Python 是什么
Python 是一种解释型、面向对象的高级编程语言,由 Guido van Rossum 于 1991 年首次发布。它的设计哲学强调代码可读性,用缩进代替了其他语言中常见的大括号,语法非常接近自然语言。
# Java 风格的代码块使用大括号,而 Python 使用缩进 if score >= 60: print("及格") else: print("不及格")对于初学者来说,Python 的优势非常明显:
- 语法简洁,上手成本低。
- 内置模块丰富,不需要自己造轮子。
- 应用领域覆盖 Web 开发、数据分析、人工智能、自动化脚本等。
- 社区活跃,遇到问题很容易搜到解决方案。
1.2 本文的学习路线
本文不是单纯讲语法,而是把 Python 入门拆成一条完整可执行的路线:
- 安装 Python 并验证环境。
- 配置 VSCode 编辑器并安装 Python 扩展。
- 掌握最基本的变量、循环、函数语法。
- 使用内置的 turtle 模块完成可视化绘图。
- 通过综合案例巩固知识点。
这套路线的好处是:每完成一步都能看到实际结果,尤其是海龟绘图部分,代码运行后会弹出一个绘图窗口,对新手来说成就感非常强。
1.3 为什么用海龟绘图入门
海龟绘图(turtle)是 Python 标准库自带的模块,不需要额外安装第三方包。它的核心思想是:把屏幕想象成一块画布,有一个小海龟在上面爬行,海龟移动的轨迹就是画出的线条。
用海龟绘图入门有三个好处:
- 内置模块,环境配置好即可运行。
- 可视化反馈,代码和图形一一对应。
- 可以直观理解循环、函数、坐标等编程概念。
我们后面会逐步展开具体用法。
2. Python 环境配置
2.1 下载并安装 Python
打开 Python 官网(https://www.python.org/downloads/),点击页面上的下载按钮即可。这里有几个关键点需要特别注意:
- 尽量选择 Python 3.8 及以上版本,本文示例以 Python 3.x 为准。
- Windows 用户在安装向导第一屏,务必勾选底部的
Add Python to PATH选项。 - 安装模式建议选择默认的
Install Now,除非你对安装路径有特殊要求。
Add Python to PATH这一项非常重要。勾选它之后,系统会自动把 Python 的可执行文件路径写入环境变量,这样在命令行里输入python才能直接启动解释器。很多新手安装完成后发现python命令不可用,绝大多数原因就是这一步漏了勾选。
macOS 用户如果使用官方安装包,安装过程和 Windows 类似;也可以使用 Homebrew 安装。Linux 用户一般自带 Python,可以通过python3命令调用。
2.2 验证安装是否成功
安装完成后,打开命令行工具(Windows 上按Win + R,输入cmd回车),依次输入以下命令:
python --version如果输出类似Python 3.12.4的版本号,说明安装成功。如果提示'python' 不是内部或外部命令,说明 PATH 没有配置成功,可以尝试使用py命令:
py --version在 Windows 上,Python 官方安装包会同时安装py启动器,它是一个更稳定的入口。后续所有命令,如果python不可用,都可以用py替代。
再验证一下 pip 包管理工具:
pip --versionpip 是 Python 的第三方包管理工具,后面安装第三方库时会用到。对于本文的海龟绘图,因为 turtle 是标准库,不需要 pip 安装任何东西。
2.3 pip 与 Python 包管理
虽然本文主要使用标准库,但了解一下 pip 仍然很有必要。pip 的使用格式很简单:
pip install 包名例如安装常用的 requests 库:
pip install requests如果下载速度较慢,可以临时指定国内镜像源:
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple注意:在生产环境或大型项目中,更推荐使用虚拟环境(venv)来隔离不同项目的依赖,这个后面在最佳实践部分会展开说明。新手阶段直接在全局环境安装也没有太大问题。
3. VSCode 开发环境搭建
3.1 安装 VSCode
Python 代码可以用任何文本编辑器编写,但一套好用的开发工具能显著提升效率。VSCode 是目前最主流的免费编辑器,轻量、插件生态丰富,对 Python 支持非常友好。
在 VSCode 官网(https://code.visualstudio.com/)下载对应系统的安装包,安装过程一路默认即可。安装完成后打开,界面默认是英文的,后续安装中文插件后可以切换为中文界面。
3.2 安装 Python 扩展
为了让 VSCode 支持 Python 代码的语法高亮、智能提示、代码补全和调试功能,需要安装官方 Python 扩展。操作步骤:
- 点击左侧边栏的扩展图标(方形拼图图标)。
- 在搜索框输入
Python。 - 找到发布者为 Microsoft 的
Python扩展,点击Install安装。 - 安装完成后,可以继续安装
Chinese (Simplified) (简体中文)语言包。
安装完扩展后,VSCode 会自动识别系统中的 Python 解释器。如果不是自动识别,可以通过下面的方式手动指定。
3.3 配置 Python 解释器
按下Ctrl + Shift + P打开命令面板,输入Python: Select Interpreter,回车后会列出 VSCode 检测到的所有 Python 解释器。
选择我们刚才安装的 Python 3.x 版本即可。这个步骤的意义是告诉 VSCode:当前项目使用哪个 Python 环境来运行代码、提供智能提示和安装依赖。如果选错或没有选择,代码补全功能可能失效。
在 VSCode 底部状态栏可以看到当前解释器路径,点击它也可以快速切换解释器。
3.4 新建项目与第一个程序
打开 VSCode,选择「文件 -> 打开文件夹」,新建一个名为python-first-lesson的文件夹并打开。然后在资源管理器面板中新建文件hello.py,输入以下内容:
print("Hello, Python!")保存后,点击文件右上角的三角形运行按钮,或直接在终端输入:
python hello.py运行结果:
Hello, Python!到这里,我们的开发环境已经全部打通了。接下来先补充一些海龟绘图需要用到的 Python 基础语法。
4. Python 核心基础语法(写海龟绘图前必会)
本节不追求全面,只挑选海龟绘图案例中会用到的知识点:变量、循环、函数、注释。掌握这些内容之后,后面读代码就不会一头雾水了。
4.1 变量与数据类型
变量是给数据起一个名字。Python 中不需要声明类型,直接赋值即可:
name = "Python" times = 10 pi = 3.14159这里name是字符串类型,times是整数类型,pi是浮点数类型。可以用type()函数查看类型:
print(type(name)) # <class 'str'> print(type(times)) # <class 'int'> print(type(pi)) # <class 'float'>4.2 循环
海龟绘图中最常用的循环是for循环。它的作用是重复执行某段代码:
for i in range(4): print("第", i + 1, "次循环")range(4)会生成 0、1、2、3 四个数字,循环体执行 4 次。注意 Python 的计数从 0 开始,所以循环变量i的值是 0 到 3。
海龟绘图中画正方形就是一个典型的循环场景:向前走 100 步,右转 90 度,重复 4 次。
4.3 函数
函数是可重复使用的代码块。定义一个函数使用def关键字:
def draw_square(): for i in range(4): print("画一条边")定义好之后,通过函数名加括号来调用:
draw_square()函数的好处是逻辑复用。后面我们会把画三角形、画圆形分别封装成函数,让主代码看起来非常简洁。
4.4 注释与代码规范
Python 中使用#表示单行注释,多行注释可以使用连续的#或三引号字符串:
# 这是一个单行注释 """ 这是多行注释 通常用于解释模块或函数的功能 """初学者从一开始就养成写注释的习惯非常重要。注释不是写给别人看的,而是写给一周后的自己看的。代码规范方面,Python 官方推荐使用 4 个空格作为缩进,变量命名使用小写字母加下划线,例如draw_square、circle_radius。
5. 海龟绘图完整入门
5.1 海龟绘图是什么
turtle 模块是 Python 标准库的一部分,它基于 tkinter 图形库实现。引入方式:
import turtle运行这段代码后不会立刻弹窗,需要执行相关绘制指令后,turtle 才会创建窗口。最简单的示例:
import turtle t = turtle.Turtle() t.forward(100) turtle.done()运行后会出现一个带有箭头的窗口,箭头向前移动了 100 像素,留下一条线段。
最后一行turtle.done()的作用是让窗口保持打开,等待用户手动关闭。如果不写这一行,窗口会在绘制结束后立即关闭,很多新手第一次运行时会误以为程序出错了。
5.2 画布与坐标
海龟绘图默认生成一个 800x600 像素的画布。画布的中心点是坐标原点 (0, 0),水平方向为 x 轴,向右为正;垂直方向为 y 轴,向上为正。
海龟默认的初始位置在原点,朝向为水平向右。控制海龟运动的指令主要有:
forward(distance)向当前方向前进。backward(distance)向当前方向后退。right(angle)右转指定角度。left(angle)左转指定角度。goto(x, y)移动到指定坐标。penup()抬起笔,移动时不画线。pendown()落下笔,移动时画线。
5.3 常用属性设置
除了移动指令,还需要掌握设置画笔属性的指令:
t.color("red") # 设置画笔颜色 t.pensize(3) # 设置线条粗细 t.speed(5) # 设置移动速度(1 最慢,10 最快) t.pencolor("blue") # 只设置画笔颜色 t.fillcolor("yellow") # 只设置填充颜色颜色既可以使用英文单词(如"red"、"blue"、"green"),也可以使用十六进制颜色值(如"#FF5733")。
5.4 案例一:画一个正方形
先来看一个最简单的完整案例。新建文件square.py:
import turtle t = turtle.Turtle() t.pensize(3) t.color("blue") for i in range(4): t.forward(100) t.right(90) turtle.done()运行这段代码,可以看到海龟依次向前移动 100 像素、右转 90 度,重复 4 次后画出一个边长为 100 像素的正方形。
这里的关键点是循环和角度的关系。正方形的外角是 90 度,所以每次转向 90 度,循环 4 次后海龟回到起点,方向也回到初始方向。
如果想画等边三角形,只需要把循环次数改为 3,转向角度改为 120 度即可。五边形就是循环 5 次、转向 72 度。可以发现规律:正 n 边形的外角等于 360 除以 n。
5.5 案例二:彩色螺旋线
接下来做一个视觉效果更好的案例:画一条不断旋转的彩色螺旋线。新建文件spiral.py:
import turtle t = turtle.Turtle() t.speed(10) colors = ["red", "orange", "yellow", "green", "blue", "purple"] for i in range(60): t.pencolor(colors[i % 6]) t.forward(i * 2) t.right(30) turtle.done()这段代码的效果是:海龟每次前进的距离逐渐增大,同时右转 30 度,通过取模运算i % 6让颜色在 6 种颜色之间循环切换,最终形成一条彩色螺旋线。
i % 6的意思是 i 除以 6 的余数。当 i 从 0 递增到 59 时,i % 6的结果会在 0 到 5 之间循环,正好对应colors列表的 6 个颜色下标。
5.6 案例三:画一朵太阳花
图形填充是 turtle 一个非常实用的能力。使用begin_fill()和end_fill()包围需要填充的图形区域即可。新建文件flower.py:
import turtle t = turtle.Turtle() t.speed(8) t.color("red", "yellow") # 第一个参数是线条颜色,第二个参数是填充颜色 t.begin_fill() for i in range(36): t.forward(200) t.left(170) t.end_fill() turtle.done()这段代码的核心是一个经典的海龟绘图技巧:循环 36 次,每次前进 200 像素后左转 170 度。因为 170 度不是 360 的整数因数,海龟每次走的路径会逐渐偏移,最终形成一个花瓣状的图形,并用黄色填充内部。
运行后把窗口最大化,会看到一个类似太阳花的图案。这个案例只用了 8 行代码,却能产生非常惊艳的效果,很适合初学者获得正向反馈。
6. 综合实战:绘制一个简易小房子
学完上面的基础案例,我们来做一个综合性的小项目:绘制一个带有三角形屋顶、方形墙体、矩形门窗的小房子。这个项目的意义在于把坐标定位、循环、函数、颜色设置这些知识点串联起来。
6.1 需求拆解
整个图形可以拆成四个部分:
- 屋顶:三角形。
- 墙体:正方形。
- 门:小长方形。
- 窗户:带十字线的小正方形。
每个部分用一个函数封装,主程序依次调用。
6.2 完整代码
新建文件house.py,完整代码如下:
import turtle t = turtle.Turtle() t.speed(5) def draw_triangle(side, color): """画等边三角形,side 为边长,color 为线条颜色""" t.pencolor(color) for i in range(3): t.forward(side) t.right(120) def draw_square(side, color): """画正方形,side 为边长,color 为线条颜色""" t.pencolor(color) for i in range(4): t.forward(side) t.right(90) def draw_roof(): """绘制屋顶,并移动到墙体起点""" t.penup() t.goto(-75, 100) t.pendown() draw_triangle(150, "brown") def draw_wall(): """绘制方形墙体""" draw_square(150, "black") def draw_door(): """绘制门:一个填充红色的小矩形""" t.penup() t.goto(-20, -50) t.pendown() t.fillcolor("red") t.begin_fill() for i in range(2): t.forward(40) t.left(90) t.forward(60) t.left(90) t.end_fill() def draw_window(): """绘制窗户:一个带对角线的正方形""" t.penup() t.goto(30, 20) t.pendown() t.pencolor("blue") for i in range(4): t.forward(40) t.right(90) # 画两条对角线 t.penup() t.goto(30, 20) t.pendown() t.goto(70, 60) t.penup() t.goto(70, 20) t.pendown() t.goto(30, 60) draw_roof() draw_wall() draw_door() draw_window() t.hideturtle() turtle.done()6.3 代码说明与运行验证
这段代码有几个需要解释的地方:
- 屋顶和墙体共用底边。屋顶三角形的底边从
(-75, 100)开始,边长 150,画完后海龟正好落在(75, 100);墙体从(-75, -50)开始,边长 150,向上画到(-75, 100),刚好和屋顶底边衔接。 - 门的矩形通过
for i in range(2)循环,交替前进宽和高的步长,这是画矩形的通用方法。 - 窗户的对角线通过
goto直接定位完成。
运行方式:
python house.py如果所有代码都正确,你会看到一个棕色屋顶、黑色墙体、红色门和蓝色窗户的小房子。可以尝试调整门的位置参数(-20, -50),观察门在画面中的移动方向,加深对坐标系的理解。
7. 常见问题与排查
新手在配置环境和运行 turtle 程序时,很容易遇到下面几类问题。我整理了一份排查表,按顺序检查即可。
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
python命令提示不存在 | 安装时未勾选 Add Python to PATH | 使用py命令,或重新安装并勾选 PATH;也可以手动配置环境变量 |
| 安装后版本号和预期不一致 | 系统存在多个 Python 版本 | 在命令行输入where python查看实际路径,通过py -3.12指定版本 |
| VSCode 没有代码提示 | 未安装 Python 扩展或未选择解释器 | 安装 Microsoft 的 Python 扩展,并通过命令面板选择解释器 |
| 运行 turtle 程序后窗口一闪而过 | 缺少turtle.done() | 在代码末尾加上turtle.done()或t.mainloop() |
报错No module named 'turtle' | 使用了精简版 Python 或环境异常 | 正常情况下 turtle 是标准库,确认使用的是官方 Python;个别平台需要安装python3-tk |
报错NameError: name 't' is not defined | 变量名拼写不一致 | 检查所有t.前面是否都创建了t = turtle.Turtle() |
| 画布窗口能打开但没有图形 | 代码可能在函数中未调用 | 检查是否在文件末尾调用了绘制函数 |
7.1 Linux 下 turtle 模块缺失的处理
如果你使用的是 Linux 系统,运行import turtle时可能报错ModuleNotFoundError: No module named 'tkinter'。这是因为部分 Linux 发行版不会默认安装 tkinter。Debian/Ubuntu 系列可以通过以下命令解决:
sudo apt update sudo apt install python3-tk安装完成后重新运行代码即可。
7.2 如何避免再次踩坑
从长期来看,建议新手养成三个好习惯:
- 安装任何开发工具时,把安装日志截图保存,方便排查。
- 每次运行代码前,检查当前工作目录和文件路径是否正确。
- 遇到报错先读最后一行,Python 的报错信息已经包含了错误类型和大致位置。
8. 最佳实践与学习建议
8.1 用函数组织逻辑
从第一节开始就使用函数组织代码,而不是把所有指令平铺在文件里。以第 6 节的小房子为例,如果没有函数,代码会是一长串难以阅读的移动指令;拆成函数后,主程序只有 4 行调用,每个函数的职责也一目了然。
8.2 学会读报错和查文档
Python 的报错信息非常友好,例如NameError: name 'turtle' is not defined意味着你忘记导入模块;TypeError: forward() missing 1 required positional argument意味着调用函数时少传了参数。
官方文档是查询模块功能的权威来源。在交互式环境中也可以使用help()函数快速查看用法:
import turtle help(turtle.Turtle.forward)8.3 下一步学习路线
学完本文的内容,你已经掌握了 Python 最基本的环境配置、程序运行方式和编程思维。接下来可以按下面的顺序继续深入:
- 熟悉流程控制:if 条件判断、while 循环、for 循环。
- 学习字符串、列表、字典等常用数据结构。
- 学习函数的参数和返回值。
- 尝试用 Python 解决日常问题,例如批量重命名文件、处理 Excel 表格。
- 选择一个方向深入学习,例如数据分析(pandas)、Web 开发(Flask/Django)或爬虫(requests + BeautifulSoup)。
海龟绘图本身也是很好的进阶练习素材:可以尝试画一个五角星、画一颗圣诞树、模拟一个钟表表盘,甚至制作一个简单的猜数字游戏。重点是让自己持续获得“代码能运行、结果看得见”的正反馈。
如果你在配置环境或运行代码时遇到问题,欢迎把报错信息完整贴出来交流。把本文收藏备用,等电脑上的环境配置好了,再照着第 5 节和第 6 节的案例动手敲一遍,远比自己只看代码效果好得多。