尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

零基础学Python:从环境配置到第一个Hello World程序

发布时间:2026/9/28 16:38:59

资讯中心
01
ARTICLE

零基础学Python:从环境配置到第一个Hello World程序

零基础学Python:从环境配置到第一个Hello World程序
都2025年了我还是经常在后台收到这样的私信博主我想学 Python 入门第一个程序到底怎么写我连环境都装不明白是不是不适合学编程每次看到这类问题我就想起自己当年抱着《Python 编程从入门到实践》卡在安装环节整整两小时的狼狈样——不是教材写得不好而是没人告诉我安装完还要勾选Add to PATH也没人说绿色命令行弹出来那一瞬间其实就成功了一小半。这篇内容我打算把从零到一的第一个程序整条链路完整捋一遍从环境准备、编辑器选型到写代码、跑起来、看懂报错再到把 Hello World 改造成有点实际意义的小工具。不整虚头巴脑的理论全是能直接照着抄的操作和踩坑心得。1. 装 Python 这件事比你想的更容易踩坑1.1 Windows 用户勾选 PATH 是所有坑里最大的那个先说 Windows。很多人从官网下载 Python 安装包一路 Next 到底装完打开命令行敲python --version系统直接回复不是内部或外部命令心态当场崩掉。原因很简单安装时那个Add Python to PATH复选框默认是没勾上的。正确的做法是双击安装包后在第一个界面先把底部的 Add python.exe to PATH 勾上再点 Install Now。这一步决定了你之后能不能在命令行里直接用python命令。如果这一步已经错过了也不用重装按Win R输入sysdm.cpl在高级标签页里点环境变量在 Path 变量里手动把 Python 的安装路径通常是C:\Users\你的用户名\AppData\Local\Programs\Python\Python311\加进去就行。为什么 PATH 这么重要打个比方命令行就像一个大商场你喊python其实就是喊一个人的名字但商场广播如果不认识这个名字、不知道这个人住哪间店铺它没法帮你找到人。PATH 环境变量就是那本店铺索引告诉系统该去哪里找 python.exe。安装版本上我的建议是优先选 Python 3.10 或 3.11 的稳定版不要追最新的 3.13。原因不是 3.13 不好而是很多第三方库尤其是后面你可能用到的数据分析、爬虫类库对新版本的适配会慢半拍。稳才是新手第一需求。1.2 macOS 用户先敲命令确认系统自带版本macOS 用户相对省心因为系统自带 Python 2.x很多教程直接让你打开终端跑python跑出来一个老掉牙的版本然后你再装 Python 3 又装不明白。正确的姿势是打开终端先执行python3 --version看看有没有自带版本。macOS 自带的是 Python 3较新系统版本自带 3.8 或 3.9但它毕竟是系统级工具链的一部分我推荐用官方安装包再装一份独立的最新版原因有两条系统自带的 Python 被系统服务依赖你如果贸然用 pip 装一堆东西很容易把系统环境搞坏。独立安装的 Python 有自己独立的 site-packages出问题直接删掉重装不心疼。安装时保持默认设置即可装完以后在终端里执行python3就能进入交互式环境。如果你像我一样嫌每次敲python3麻烦可以在~/.zshrc里加一行alias pythonpython3一劳永逸。1.3 Linux 用户包管理器是好朋友Linux 用户通常基于 apt 或 yum 直接安装sudo apt update sudo apt install python3 python3-pip装完验证一下python3 --version pip3 --version这里有个有意思的细节Debian/Ubuntu 系系统默认执行python是找不到命令的必须敲python3。很多初学者在这一步就卡住以为自己没装成功。遇到这种情况先别慌这不是错误是 Linux 发行版的默认设计。你在后续所有命令里把python替换成python3、pip替换成pip3就行。1.4 验证是否装好的三个硬指标不管什么系统装完之后统一用三连命令验证python --version或python3 --version——看解释器版本号。pip --version或pip3 --version——看包管理工具是否可用。python -c print(hello)——直接让解释器执行一个最简单的代码确保能正常输出。这三条全过环境才算真正合格。不夸张地说我见过至少 20 个朋友装完环境后第一步直接写代码结果报环境错误兜了一圈才发现是安装时没做验证。2. 编辑器选型写第一行代码前先解决在哪写的问题2.1 新手到底选 IDLE、VS Code 还是 PyCharm环境装好了下一个大问题是拿什么写代码市面上选项太多我给你一条不纠结的结论纯新手、电脑配置一般、想最快跑通第一个程序——直接用安装 Python 时自带的 IDLE。它足够简单没有乱七八糟的配置项。想长期学习、愿意花半小时配置一个现代化的开发环境——选 VS Code。上了两个月课还想继续走专业路线尤其未来打算做 Web 后端或数据处理——直接上 PyCharm Community 版就够了不要一开始就破解专业版。我个人的建议是第一个程序用 IDLE跑通了再迁移到 VS Code。原因是有很多同学第一次写代码就打开了 VS Code结果卡在Python 解释器路径没选终端输出中文乱码这类环境问题上代码本身反而没得到关注。第一课的信心比效率重要得多先把我能跑通的成就感拿到手再谈工具效率。2.2 IDLE 的两种模式一定要分清楚IDLE 打开以后你会看到开头的交互式界面这叫 Shell 模式。在这个模式里你输入一行代码回车立刻看到结果。比如输入print(hello)回车马上输出hello。但真正的脚本开发你需要用CtrlNmacOS 是CmdN打开一个新的编辑窗口这才是你写完整代码的地方。写完以后按F5运行结果会回显到 Shell 窗口。很多新手照着教程输入代码半天看不到输出就是因为他把代码敲在了 Shell 里而不是编辑窗口里。这里记住单行测试去 Shell完整程序开新窗口两件事不要混。2.3 VS Code 配置 Python 的三个关键点如果你决定用 VS Code配置时只需要盯住三件事装官方 Python 扩展——在扩展商店搜 Python认准微软出品、下载量几亿的那个装完重启一下窗口。选择解释器——按CtrlShiftP输入 Python: Select Interpreter选你刚装好的那个版本。这一步不做好代码编辑器不会帮你补全提示运行也会自动用错解释器。设置终端为集成终端——直接在 VS Code 里打开新终端确认命令行里出现了类似(venv)或者至少是python字样。之后所有运行命令都在这个终端里执行。VS Code 有个好处是自带调试面板但第一个程序阶段我建议你先不要用调试功能老老实实python 文件名.py运行把输出看懂再说。调试是第二个阶段的事。2.4 代码文件放在哪里隐藏的心智负担还有一个容易忽略的问题文件路径。我见过不少同学把代码文件直接丢在桌面上或者用中文命名文件夹。Python 本身对中文文件名不敏感但后续你一旦接触命令行、虚拟环境、包管理中文路径带来的麻烦会成倍增加。建议做法在磁盘根目录下建一个纯英文的目录比如D:\python_learning或者~/projects/learn-python专门放所有学习代码。文件命名也统一用英文小写加下划线比如first_program.py。这个习惯越早养成后面越省心。3. 第一个程序Hello, World!从输入到运行完整复现3.1 两种写法交互式一行流 vs 脚本文件先说最标准的第一个程序——打印一行问候语。在 IDLE 的编辑窗口里输入print(Hello, World!)然后F5运行。你会看到 Shell 窗口里输出Hello, World!。整个过程不到 30 秒但背后其实藏着两条完全不同的代码执行路径交互式模式逐行输入逐行执行适合做实验、验证想法。比如你对某个语法不熟直接在后面敲一下试试立刻看到结果。脚本文件模式把所有代码写进.py文件交给 Python 解释器整体执行。这是正经写程序的形态代码可以保存、复用、修改。这里有个新手常踩的坑文件名用了 Python 的保留字比如把文件命名为test.py是没问题的但如果命名为print.py或者list.py运行时会报各种诡异错误。因为 Python 把内置模块和变量名都占了你的文件一旦叫这个名字就会和标准库冲突。经验法则文件名别叫test.py以外的任何内置函数名。3.2 逐行拆解 print 语句到底做了什么print(Hello, World!)看起来太简单了简单到很多人不屑于理解它。但这是你编程生涯的第一个函数调用值得拆开看print是 Python 的内置函数它接收参数并把参数显示到标准输出默认是电脑屏幕。()是函数调用的符号。括号里放的是你想传进去的内容。Hello, World!是一个字符串字面量。字符串就是文本用引号括起来告诉 Python这是一串数据不是一个命令。结尾的换行是 print 函数自动加的。也就是说 print 默认会在打印内容后追加一个换行符所以连续两个 print 会是两行输出。如果你把代码改成这样print(Hello, World!, end) print(又一段)输出结果会变成Hello, World!又一段因为第一个 print 的结尾换行被end禁掉了。之所以提这个是想告诉你print 函数没有传说中那么无脑它有一些可调参数这些参数后续在写格式化输出、进度条时都会用到。3.3 三种运行方式的对比终端、IDLE、VS Code同一份代码有三种运行姿势运行方式操作适用场景终端命令python 文件名.py最接近真实工作流任何环境通用IDLE 编辑窗口 F5快捷键运行新手期最简单免配置VS Code 运行按钮右下角三角日常开发集成了调试我的建议是第一个程序直接用终端跑。打开命令行切到代码所在目录敲python first_program.py。虽然 IDLE 更省心但终端让你直面程序是怎么被执行的这个本质问题而且后面所有自动化任务、服务器部署、定时脚本全部依赖终端运行这个技能早晚得学。3.4 为什么是Hello, World!而不是别的很多人好奇为什么所有教程第一个程序都是这句话。这要从 1978 年 Brian Kernighan 在《C 程序设计语言》里首次使用Hello, World示例开始。它成了编程界一个心照不宣的仪式感。但放在现实教学里这句话的意义并不在于内容而在于验证整条链路是通的你写的代码有没有语法错误解释器能不能正确执行输出能不能正常显示这三个问题全部过关说明你的编程环境是一个可以干活的环境。后续所有复杂程序本质都是这三种能力的延伸——写代码、解释器执行、输出结果。4. 代码背后的运行逻辑脚本、解释器和程序入口4.1 Python 是边解释边执行还是先编译再执行这是新手最爱问的问题也最容易听错答案。Python 常被归为解释型语言但准确地说CPython官方默认实现采用的是先编译成字节码再在虚拟机里执行的混合模式。当你运行python first_program.py时实际发生的事情是Python 解释器读取源文件逐行检查语法把人类可读的代码解析成一个内部结构。这个内部结构被编译成字节码bytecode也就是.pyc文件里的内容。虚拟机读取字节码逐条执行指令完成 print 等操作。看到__pycache__文件夹不要慌里面就是你的代码编译后生成的缓存字节码。它存在的意义是加速重复运行——第二次跑同样代码时如果源文件没变化就直接拿字节码执行省一次编译。这个机制带来的一个直接结果是Python 的语法错误是在运行前就暴露的而不是运行到那一行才报错。比如你在文件开头有个语法错误即使这一行永远不会被执行到启动时也会直接报 SyntaxError。理解这一点你排错思路就从程序哪里出错了变成语法哪里不合规。4.2 什么是程序入口Python 的特殊之处在 C 语言或 Java 里程序有一个明确的入口函数main 函数整个程序从那里启动。但 Python 不一样Python 脚本是从文件第一行开始按顺序逐行执行到最后一行的。没有所谓的主函数。不过在大型项目、模块化开发里你会经常看到这种写法def main(): print(Hello, World!) if __name__ __main__: main()这段代码的意思是只有当这个文件被当作主程序直接运行时才执行 main 函数如果这个文件被别人 import 作为一种模块引入则不执行 main只定义函数。对于第一个程序来说这个写法不重要但你一定会遇到它。提前知道它的存在能减少后来看到各种教程里奇怪代码时的困惑。我见过一个真实案例有个同学把一个功能模块写好在文件底部加了一句print(模块加载成功)然后被其他程序 import 时每次都会打印这句话他还以为出了 bug。这就是没理解模块被导入时整个顶层代码都会被依次执行这个特性。4.3 环境变量和 Python 路径是怎么影响运行的你在命令行敲python系统找到了解释器这依赖 PATH 环境变量。理论上同一台电脑上可能同时存在多个 Python比如 2.7、3.8、3.11、Anaconda 的 Python它们互不干扰又互相竞争。你可以随时用which pythonWindows 用where python查看当前敲的python实际上指到哪个路径。如果发现跑出来的版本和预期不符大概率是 PATH 里面路径顺序不对系统取了排在前面那个。新手不需要在这上面花太多精力但要有一个认知你后来用 pip 安装各种库装到的位置一定是当前这个python解释器对应的 site-packages。如果同时用多个 Python就会出现在这个命令行里能 import 的库在另一个环境里 import 不了的情况。后面我们讲虚拟环境就是专门解决这个问题的但第一步程序阶段先用一个解释器就好。5. 新手最常见的四个报错与排查思路5.1 SyntaxError语法错误——别急着改先看提示箭头写第一个程序最常见的报错是三种我直接给你列出对应代码和现象# 报错 1少了括号 print(Hello, World!运行后报SyntaxError: ( was never closed提示信息直接告诉你哪个括号没闭合。这类报错错误信息里往往有一个^箭头指向问题发生的位置。你只需要顺着箭头往回看十有八九是引号不匹配、括号没闭合、冒号忘了写。# 报错 2用了中文标点 printHello, World!这里第一眼的 f发起手写的中文左括号Python 不认直接报SyntaxError: invalid character (UFF08)。这个报错很经典因为很多编辑器会把中文标点自动加进去肉眼根本看不出来。解决方法是让编辑器显示空白字符或者你干脆全选重新打一遍。# 报错 3缩进错了 if True: print(Hello)Python 用缩进来表示代码块缩进不一致会报IndentationError: unexpected indent。这是 Python 对新手最残酷、也最友好的地方残酷在于你习惯了花括号之后连空格的错误都会让它崩掉友好在于缩进错误的信息是明确的几乎不用猜。5.2 NameError名字没定义——先检查拼写和变量赋值顺序print(hellooo)运行时报NameError: name hellooo is not defined。新手看到这个报错往往会一脸懵我明明定义了呀但真相多数时候是变量名拼写不一致或者代码真的没定义就使用。Python 是动态语言解释器不会帮你静态检查变量名是否拼对它只会在运行到那一行时按照名字去查找内存里有没有对应的值。排查思路就两步第一步检查报错信息里提到的名字有没有在任何地方被定义过第二步检查定义和使用的顺序使用位置是否在定义位置之后。这两个问题占 NameError 报错的 95% 以上。5.3 ModuleNotFoundError找不到模块——分清没装和没放进路径如果你在第一个程序里尝试导入外部库比如import numpy运行时报ModuleNotFoundError: No module named numpy排查的顺序如下确认你有没有安装它pip install numpy。确认装到了当前解释器环境里用python -m pip list查看当前 Python 环境里已安装的库。确认文件和外部库不重名如果你把文件命名为numpy.py放在运行目录下Python 会优先加载本地文件从而把真正的外部库屏蔽掉。第三条是最隐蔽的坑。我上大学时把作业命名成requests.py然后自己的代码里 import requests结果一直报解析错误排查到半夜才发现是文件名把标准库给撞了。5.4 中文乱码与编码问题新手往往会在 print 里输出中文比如print(你好)。正常情况下输出没问题但如果你的终端环境编码不是 UTF-8就会出现类似浣犲ソ的乱码或者直接报UnicodeEncodeError。解决方案有两种修改脚本头部声明在文件第一行加# -*- coding: utf-8 -*-。Python 3 默认就是 UTF-8 源码所以这个声明通常不必要但写上也没有副作用能提醒编辑器按 UTF-8 读取。修改终端编码Windows 终端里执行chcp 65001切到 UTF-8 代码页macOS/Linux 终端默认 UTF-8基本不会遇到这个问题。乱码问题的本质是文件存储编码、解释器读入编码、终端显示编码三者必须一致。哪个环节错了输出的就不是你想看到的字符。6. 进阶一步把第一个程序改造成有实际意义的输入-输出程序6.1 从只会输出到能接收输入纯打印 Hello World 太孤独了。第一个程序跑通以后我建议你立刻做一个小小改造让程序问你叫什么名字然后跟你打招呼。name input(请输入你的名字) print(你好 name 欢迎来到 Python 世界。)运行这一小段你会看到程序停在那里等你输入输完回车它再用你的名字打招呼。这个改造背后引入了三个重要概念变量name是一个变量它把 input 函数返回的字符串装起来。函数的返回值input会让你输入一行文本然后把这个文本作为返回值传回给变量。字符串拼接能把三段字符串拼成一段新的字符串。已经有无数人向我反馈说这个小小的交互程序比 Hello World 带来的冲击大得多——因为你可以和程序对话了程序开始像一个有生命的东西。6.2 数值运算程序把 print 派上用场再进阶一点写一个输入两个数字、输出两者之和的程序a input(请输入第一个数字) b input(请输入第二个数字) print(两数之和为, a b)这个程序有一个著名的坑如果你输入 3 和 4输出的不是 7而是 34。因为input返回的是字符串3 4在 Python 里是字符串拼接结果是34不是数字相加。要让它变成真正的数字运算需要显式转换类型a int(input(请输入第一个数字)) b int(input(请输入第二个数字)) print(两数之和为, a b)int()函数把字符串转成整数转换后再相加结果才是 7。这个报错不报错、结果不符合预期的场景是刚入门的人最容易迷茫的点但它恰好给你引入了一个重要概念数据的类型决定运算的行为。字符串的是拼接数字的是求和。Python 虽然不强制声明类型但每一种数据内部是有类型的你要时刻知道自己在跟哪种类型打交道。6.3 注释你的第一个程序应该有的第二行代码写代码给机器看但更是写给人看。我强烈建议你从第一个程序开始就养成写注释的习惯# 这是第一个程序让用户输入名字并打印欢迎语 name input(请输入你的名字) print(你好 name )注释有两种形式单行用#多行用三引号 作者小明 功能第一个交互式程序 创建时间2025年1月 很多初学者觉得注释多此一举但三个月后回头翻自己的代码你就会感激当初留下注释的自己。术语上这叫做代码的可维护性。它不直接影响运行结果但直接影响你后期的学习效率。6.4 从第一个程序到第一行能装进简历的代码到此你的第一个程序已经从Hello, World!升级成了能输入、能运算、有注释的小脚本。这个过程的本质是你在完成一个完整的最小闭环提出需求 → 设计结构 → 写代码 → 运行测试 → 修复问题 → 得到结果这个闭环从你零基础到熟练以后写任何程序都离不开。我见过最快的学员用这一篇内容的操作在第 3 天就写出了一个能帮自己统计购买物品总价的小脚本。也有很多人卡在安装环节三天没动静。差别不在天赋而在是否愿意一步步按链路走下来以及遇到报错时是先读错误信息还是先崩溃。最后再分享一个我自己的小习惯每次跑通一个新程序我会立刻在代码文件顶部加一行注释记录日期和当时的状态。三个月后再回看那份从零到一的轨迹比任何教程都更有说服力。祝你的第一条代码顺利跑通遇到的问题随时带着报错信息来交流。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。