☰
零基础学Python?从跑通第一个程序开始
2026/10/14 5:20:18 网站建设 项目流程

很多朋友第一次接触编程,不是被某个概念难住的,而是卡在了一个看起来特别小的问题上:环境装好了,第一个程序却不知道怎么写,写了又不知道在哪看结果。今天这篇我想带你从零开始,把 Python 入门路上的第一块砖——第一个程序,完整地跑通。你不用提前背任何语法,也不用懂什么高深术语,只要愿意跟着敲几行字,就能看到自己的代码在终端里输出内容。这条路我自己走过,也陪不少朋友走过,适合完全没写过代码的小白,也适合以前学过但早忘光、想重新捡起来的人。

1. 为什么第一门语言要选 Python

1.1 用最短的时间建立“我能行”的反馈

我把很多朋友带进编程这个坑之后发现,大多数人放弃,根本不是因为某个语法学不会,而是因为“学了没反馈”。很多传统语言,要写一个能跑的程序,先得配环境、写结构、处理各种符号,折腾半天还看不到结果,新手很容易产生自我怀疑:我是不是不适合写代码?

Python 不是这个玩法。它是一门解释型语言,写一行就能跑一行,写完print("Hello")回车,屏幕上立刻就有反应。这种即时反馈对新手来说极其重要。打个不太准确的比方:学游泳,正确的起步不是先背流体力学,而是先下水扑腾两下,找到“水能托住我”的感觉,再慢慢纠正姿势。Python 就是那池水,第一个程序就是你的第一次扑腾。

Python 的语法也刻意做得很接近自然语言。它没有一堆括号、分号、头文件这些“仪式感”,变量随手定义,判断用if,循环用for,读起来跟英文句子差不多。这意味着你在最初几天可以把全部注意力放在“程序的逻辑是什么”,而不是“这行代码为什么编译不过”。这种低门槛不是廉价,恰恰是它作为入门语言最值钱的地方。

1.2 学完不是终点,而是很多领域的敲门砖

选择 Python 还有一个现实考量:生态够大。你入门之后,不管是想做网站后端、写桌面小工具、处理 Excel 表格、做数据分析,还是往机器学习和人工智能方向走,Python 都有现成的库可以接。很多人在入门阶段担心的“学了半天不知道能干嘛”,在 Python 这里不太容易发生——你学会基础语法之后,很快就能写出“批量改文件名”“整理日志”“自动发消息提醒”这种能真正解决生活里小麻烦的脚本。

所以我的建议一直是:如果你的目标是“学会编程”本身,或者“以后想做一些自动化工具”,Python 是最省力气的起点。它不会让你一步登天,但会让你以最小的阻力,迈进编程的大门。

2. 环境准备这一步,别想得太复杂也别太随意

2.1 安装 Python:官网安装包和那个关键的勾选

我见过太多新手在装环境上卡住,然后就放弃了。其实 Windows 上装 Python 非常简单,关键是做完一个动作。

先去 Python 的官网下载页面,选最新的稳定版安装包,一般就是 3.x 系列。有人喜欢去应用商店装,或者看网上的教程装各种捆绑包,我的建议是别折腾,直接官方渠道最稳妥。

双击安装包之后,第一屏会有一个很容易被忽略的选项:“Add python.exe to PATH”。这个勾选一定一定要选上,然后再点Install Now。如果你没勾,后面在终端里输入python就会提示“不是内部或外部命令”,很多人就是倒在这一步。

注意:PATH 这个词听起来很吓人,其实它只是一个“命令检索清单”。你勾选之后,系统就知道在终端里输python该去哪个目录找程序;不勾,系统就一脸茫然。

安装完成之后,打开命令行窗口,输入下面任意一条命令验证:

python --version

如果你看到类似Python 3.12.x的输出,说明环境已经通了。如果你用的是 Mac 或者 Linux,终端里敲python3可能更通用,也就是:

python3 --version

2.2 编辑器:先别追求“专业感”

第一个程序用记事本写都完全没问题,真的。很多新手喜欢一上来就装功能最全的编辑器,结果打开界面一看全是按钮,配置配了两小时还没开始写代码,热情先凉了一半。

我的建议是按阶段来:

阶段我推荐的工具理由
前几次练习安装自带的 IDLE,或者系统记事本零配置,开箱即用,注意力全在代码上
写第二个、第三个程序之后VS Code + Python 扩展能看到行号、自动补全,报错显示更清晰
再往后想认真做项目再考虑更完整的 IDE工具是增益,不是入门门槛

工具是拿来用的,不是拿来“学”的。第一晚你的任务不是学会编辑器,而是把第一段代码跑起来,别让工具成为阻碍。

2.3 进入交互模式,先做一次“热身”

装好之后,我建议你先别急着写文件,而是在终端里敲一个python回车,这会进入 Python 的交互模式。它长这样:

Python 3.12.x ... Type "help", "copyright", "credits" or "license" for more information. >>> print("Hello, Python") Hello, Python >>>

在这里你敲一行、它回一行,非常适合做实验。退出交互模式可以输入exit(),然后回车。这个交互模式下一次成功的感觉,会帮你建立第一波信心。

3. 第一个程序:print("Hello, World!") 的完整拆解

3.1 从新建文件到看到输出

环境通了,接下来就是正式写“文件版本”的第一个程序。很多人会问:刚才不已经在终端里输出过了吗?为什么还要写文件?因为交互模式不适合保存和重复运行,真正的程序都是存在.py文件里,随时可以被重新执行的。

步骤特别简单,我一步步拆:

  1. 建一个专门放练习代码的文件夹,比如叫python_start。
  2. 在文件夹里新建一个文本文件,改名为hello.py。注意扩展名是.py,不是.txt。
  3. 用记事本或者 IDLE 打开它,写入一行代码:
print("Hello, World!")
  1. 保存,然后打开终端(命令行窗口),进入这个文件夹所在的目录。
  2. 输入下面的命令并回车:
python hello.py

你马上就会看到终端里输出了一行:

Hello, World!

到这里,你的第一个程序就真正跑通了。别看它短,它完成了编程里一个完整的闭环:写代码 → 保存 → 交给解释器 → 得到结果。这个闭环以后你会重复上千次,第一次完整跑通的意义,是把这条链路在你脑子里打通。

3.2 逐词看代码:print、括号和引号都在干嘛

新手对print("Hello, World!")很容易产生一种“这串东西像咒语”的感觉。其实它非常直白:

  • print是 Python 内置的一个函数,它的职责就是把后面括号里的内容“打印”到屏幕上。
  • 后面的括号表示“我要调用这个函数,执行它的功能”。
  • 括号里面的"Hello, World!"是一个字符串。引号的作用是告诉 Python:这里面是一段文本,请原样输出。

如果去掉引号写成print(Hello, World!),Python 会把Hello当成一个名字去找,找不到就会报NameError。你可以把这个理解成:引号是文本的“边界标识”,没有它,Python 分不清你是在说“某段文字”还是在“叫某个东西”。

print和字符串是印刷术级别的入门知识点,但值得认真理解。因为你后面所有的输出、调试、看程序结果,都离不开它。

3.3 改一改,把它变成一个真正的“自我介绍”

光输出英文世界里的那句话还不够有成就感,我建议你立刻改成自己的版本:

print("我的第一个 Python 程序") print("今天正式开始了")

保存后重新执行:

python hello.py

终端会依次输出两行内容。这里其实隐藏了一个编程里的基本规则:程序默认从上到下、逐行执行。你写两行print,它就按照顺序执行两行。这个“顺序执行”的概念,是后续所有逻辑的基础。

3.4 交互模式和脚本模式的区别,划个重点

现在的你可能同时接触过两种运行方式:终端里敲python进交互模式,以及python hello.py运行文件。这两个要区分清楚。

交互模式适合零碎试验:你想验证某个语法对不对、某个函数怎么用,敲进去立刻有反馈,非常爽。脚本模式适合正式任务:代码保存在文件里,可以反复运行,可以交接给别人。我的建议是第一个月里,试验用交互模式,正式练习写在.py文件里。两者不是竞争关系,是你工具箱里的两件不同工具。

4. 从“打一行字”到“写一个小程序”

4.1 变量:给数据贴个标签

第一个程序只会“对外输出”,但它还不会“记住东西”。要让程序记住数据,就得用变量。变量的本质是给一个数据起个名字,方便后面反复引用。你可以把它想象成储物柜上的标签:把东西放进柜子,贴上标签,以后想取用,喊标签名字就行。

name = "小明" print(name)

这段代码做了两件事:把字符串"小明"存进了变量name,再把name里的值打印出来。注意,打印的时候print(name)不需要加引号,因为这里我们引用的是“变量的值”,而不是一段文本。新手最容易犯的错,就是把print(name)写成print("name"),后者会老老实实输出字母name这三个字符,而不是变量的内容。

4.2 让程序“听”你说话:input 函数

有了变量,程序还是死板的,每次输出的内容都一样。要变得“活”,就需要input()——它会让程序停下来,等待用户从键盘输入内容,然后把输入的内容存到变量里。

name = input("请输入你的名字:") print("你好," + name)

运行后,终端会显示一行提示“请输入你的名字:”,你在键盘上输入,回车,程序接着执行print,把你输入的内容接在“你好,”后面。这就是最简单的交互感——程序开始和你对话了。

input里写的那句话叫做提示文字,它跟最终程序功能无关,但是对使用你程序的人很重要。以后每写一个需要输入的程序,都养成“把提示写清楚”的习惯,这个细节很加分。

4.3 顺手踩一遍类型转换的坑

现在来一点稍微有深度的。假设你想让程序问出用户的年龄,然后告诉他明年几岁:

age = input("请输入你的年龄:") print("明年你" + (age + 1) + "岁")

运行起来你会立刻遇到一个报错。原因是input()返回的数据永远是字符串,程序里的age是字符串"18",而不是数字18。字符串不能直接和数字做加法,Python 就会抛TypeError。

正确写法是先做一次类型转换:

age = int(input("请输入你的年龄:")) print("明年你" + str(age + 1) + "岁")

这里int()把字符串变成了数字,所以age + 1能做数学运算;运算结果又用str()转回字符串,这样print才能用+拼接。这一来一回的类型转换,是每个 Python 新手都要过的关,也是第一个真正有信息量的报错。

等你再熟悉一点,还会接触到更优雅的写法,比如 f-string:

age = int(input("请输入你的年龄:")) print(f"明年你 {age + 1} 岁")

里面的f表示这是格式化字符串,花括号里直接写变量或表达式,省去了来回str()的麻烦。但如果你想理解语言背后的机制,上面的int()/str()转换还是值得亲手写一遍。

5. 报错不可怕,关键是学会“读”它

5.1 把报错当提示,不当判卷

新手看到一堆红色文字就慌,觉得是自己“错了”。我在陪朋友入门时总会说一句话:报错是程序在给你递纸条,告诉你哪一行出了问题、大概是什么性质的问题。会读报错,比会背语法重要得多。

Python 的报错信息叫 traceback(回溯信息)。新手不用刚开始就全懂,先养成一个习惯:看最后一行。最后一行会告诉你错误类型,比如NameError、TypeError、SyntaxError,这基本就圈定了问题范围。

5.2 高频报错速查表

我把新手最常遇到的几个报错整理成了表格,遇到了先对照看:

报错信息常见原因处理办法
SyntaxError: invalid syntax缺括号、缺冒号、用了中文标点检查行尾标点,切换输入法
NameError: name 'xxx' is not defined变量名写错或没定义检查拼写,确认引号是否误加
TypeError: can only concatenate str (not "int") to str字符串和数字直接拼接用str()转换或改用 f-string
IndentationError: unexpected indent缩进不对,tab 和空格混用统一用 4 个空格缩进
ModuleNotFoundError: No module named 'xxx'第三方库没安装先用pip install 库名安装

这个表格越早存下来越好。你后面写程序的第一个礼拜,绝大多数报错都能在这儿找到答案。

5.3 一次完整的报错排查实录

我们来模拟一次真实的排查过程。假设你写了这样的代码:

name = "小明" age = 18 print("我是" + name + ",我" + age + "岁")

运行后报错:

Traceback (most recent call last): File "hello.py", line 3, in <module> print("我是" + name + ",我" + age + "岁") TypeError: can only concatenate str (not "int") to str

我们来一句一句读。第一行是固定的字,不用管。第二行告诉你出错的文件是hello.py,第 3 行。第三行把出错的那行代码原样展示给你。最后一行是关键:TypeError,而且它说得很具体——只能拼接字符串,不能拼接整数。也就是说,age是整数,你却想用+把它跟字符串接到一起。解决办法就是第 4 节提过的那样,把数字转成字符串再拼接。

这就是“读报错”的完整流程:看最后一行知道错误类型,看前面的文件行号定位到具体位置。把这套流程练熟,你遇到的问题基本都能自己解决一半。

5.4 环境相关的几个经典问题

除了代码报错,新手还会遇到一些“代码没问题就是跑不通”的情况。我也把最经典的几个列出来:

  • 终端提示python不是命令:几乎可以肯定是安装时没勾 PATH。最快的办法就是重装一遍,把勾选勾上,或者手动把 Python 目录加进系统环境变量。
  • 中文输出变成乱码:终端编码没对上。Windows 下可以在终端里先执行chcp 65001再运行程序;或者注意用记事本保存时选择 UTF-8 编码。
  • 运行的是旧文件:改完代码忘了保存,或者终端当前不在目标目录下。养成“保存完再运行”的习惯,并用dir(Windows)或ls(Mac/Linux)确认目录里有没有这个文件。
  • 代码没问题但报SyntaxError:检查是不是用了中文括号()、中文逗号,。代码一旦夹杂中文标点,Python 就会看不懂。输入法切成英文标点再写。

这些都是很细的小事,但正好是新手最容易被绊住的点。环境问题的排查思路和代码报错不一样——代码报错盯着终端看就行,环境问题往往出在终端之外,所以遇到“代码没错却跑不了”时,优先检查目录、编码、PATH 这三个方面。

6. 跑通第一个程序之后,接下来该练什么

第一个程序跑通,你已经越过了最劝退的一道坎。接下来的路线我可以给你一个特别具体的参考,都是我陪人入门时反复验证过的节奏。

第一周的目标是“每天跑通一个小程序”。内容就围绕变量、input、if、数字和字符串这五样东西滚动练习。你可以写一个加法计算器,输入两个数字自动算出和;可以写一个单位换算器,把米换成厘米;也可以写一个猜数字的小游戏,猜大猜小给你提示。每写完一个,都试着加点新东西进去,比如多问一个名字、多输出一句提示。

第二周和第三周开始接触列表和循环。这批知识一上来,你就从“一行一行写”升级到“让程序帮我们重复干活”。经典的练习是打印九九乘法表、求一组数字里的最大值、把一个列表里所有元素逐个打印出来。这个阶段很容易产生“原来编程能做这么多事”的兴奋感,因为循环的出现让程序的自动化能力突飞猛进。

第一个月之后,把所有精力转向“做一个能解决问题的工具”。我见过最好的例子是做一个简单的记账本,输入每一笔开销,存放起来,最后统计总和;或者做一个英文单词本,输入单词和释义,随时可以查看复习。这时候你会自然用到文件读写、函数封装这些稍进阶的知识,而且是在“有真实需求”的状态下学的,记忆会深刻得多。

最后再分享一个我个人的体会:陪朋友走过从零到一之后,我发现大部分人放弃的点真的就集中在前两周的环境问题和第一波报错上。只要撑过这段时间,每天都能敲出几行能跑的程序,后面的事情都会顺起来。如果你今天正卡在某一步,别急着怀疑自己,先按顺序把环境装好,把那个简单的输出跑通。第一个程序一旦跑通,后面的路会比你想象的好走很多。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询