零基础自学Python第一周:环境搭建、语法入门与踩坑实录
2026/9/24 21:57:50 网站建设 项目流程

小白自学记录1:零基础开始学Python的第一周,我到底折腾了啥

先说清楚这个系列是干嘛的。我不是什么大牛,也没报过培训班,就是一个纯外行,白天有本职工作,晚上抽空自学Python。这个“小白自学记录”系列,就是把我的真实学习过程、踩过的坑、用过的资源、一次次想放弃又捡起来的瞬间,原原本本记录下来。这一篇是第1篇,覆盖我从下载安装一直到写完第一个能跑的小程序的完整过程。如果你是零基础,正犹豫要不要开始学、不知道从哪里下手,那这篇应该能给你一个特别真实、不加滤镜的参考。

这个系列适合谁,我也直说:适合和我一样没有编程基础、全靠业余时间自学的人。如果你有计算机背景,那这些内容对你来说可能太基础了;但如果你是那种“连文件后缀名都要百度”的新手,那我踩过的坑,你大概率也会踩一遍。我尽量把每一步都写得很细,细到哪怕你完全没接触过程序,也能照着操作。

  1. 为什么选Python,以及自学前我做的准备

1.1 先想清楚:学Python到底是为了啥

我做的最重要的一件事,不是安装软件,而是问了自己一个问题:我为什么要学Python?

这个问题看似废话,但真的能过滤掉一大批中途放弃的人。我的答案是:工作中经常要处理重复性的改表格、整理文件,偶尔还要分析一批批的活动数据,每次靠手工复制粘贴都干到怀疑人生。听人说Python能自动处理这些,我就想试试能不能用脚本把这件事干了。目标非常具体,甚至有点功利,但正是这个功利的目标,让我在第一周特别容易坚持下去,因为每学一个语法,我都知道它之后能用在哪里。

你要是也想学,建议你先别急着下载软件,先花半小时想清楚自己的目标。不用特别宏大,哪怕只是想“以后找工作多一个技能”都行。但必须有个具体一点的理由,否则学到类和对象那部分,真的会感觉自己是在背天书。

1.2 第一反应是看视频课,但我很快调整了策略

我一开始的计划特别天真:先逛B站看免费视频课,然后跟着敲代码,觉得这样应该就够了。但在网上翻了几个小时后,发现自己掉进了典型的“收藏夹吃灰”陷阱——视频收藏了一堆,真正看完的不超过两集,而且大多数视频要么太老(还在用Python 2),要么语速太慢,要么老师讲到一半自己都跑偏了。

我后来用的方案是这样的:以一本书作为主线教材,B站视频只用来解决具体问题。书我选的是《Python编程:从入门到实践》,选它的原因是口碑稳、案例多、知识点编排合理,而且它配套的练习真的很多,足够我这种小白用来巩固。视频则当作“字典”用:哪个知识点看不懂了,就搜对应标题的视频看10分钟,看懂就关掉。这个方法比一味刷视频高效得多,因为视频是被动接收,容易走神;书上的代码需要自己主动敲出来,记忆深刻得多。

1.3 我的工具清单:别问,先按这个装

刚起步的人最容易被“工具”劝退。我一开始连什么叫“解释器”、什么叫“IDE”都分不清,纯粹是安装软件的时候反复百度才搞明白的。为了帮你绕开我走过的弯路,直接给你一套能照抄的配置:

  • Python 3.12.x(目前比较新的稳定版,别用2.x,那个已经过时了)
  • PyCharm Community Edition(社区版,免费,对新手最友好)
  • 一个用来记笔记的工具(我用的是Typora,纯Markdown笔记,清爽)
  • 一个笔记仓库目录,专门用来存放每天的练习代码

这套组合非常干净:Python解释器负责“运行代码”,PyCharm负责“写代码”,笔记软件负责“记录知识点”。这三样就是我第一周的全部装备。至于VSCode、Jupyter Notebook这些,等你适应了基础语法再考虑换也不迟,没必要一开始就在工具上研究半天。

  1. 环境搭建与第一个程序:从安装到Hello World

2.1 安装Python时,最容易翻车的一个选项

下载地址我就不放了,直接搜“Python官网”就能找到。这里有一个必须反复强调的点:在Windows上安装到第一步的时候,一定要勾选最下面的那个复选框——“Add Python to PATH”。

我第一遍安装就是没勾,后来在命令行里输入python怎么都提示“不是内部或外部命令”,还以为是电脑出了问题。其实这个选项的意思,是让系统把Python的安装路径加到系统环境变量里,这样你在任意目录下打开命令行,输入python都能直接启动解释器。如果没有勾选,系统根本不知道python这个命令去哪里找。

万一你已经装完了才发现没勾选,也没关系,有补救办法:打开Windows设置,搜索“环境变量”,找到用户变量中的Path,把Python的安装路径和Scripts子目录路径手动添加进去,然后重启命令行窗口。不过我最诚恳的建议还是重装一遍,勾选好那个框,省事又省心。

2.2 PyCharm配置:新建项目时记得“新建环境”

PyCharm的安装没有啥坑,社区版一路Next就行。但新建项目的时候不要无脑点确定,重点看“New environment using”这个选项,PyCharm默认会帮你创建一个新的虚拟环境(Virtualenv)。

啥是虚拟环境,我用大白话解释一下:你可以理解成给每个项目单独开一间屋子,这间屋子里的Python基础文件是好几个项目共享的,但你在屋里额外安装的第三方库互不干扰。这样等项目多了之后,就不会出现A项目需要Django 3.0、B项目却只能跑Django 2.2这种打得头破血流的情况。

新建项目时的配置建议:Location选择你专门放代码的目录,Environment选Virtualenv,Python版本选你刚安装的那个版本。剩下的全都默认就行。

2.3 人生第一个程序:Hello World的三种写法

安装完成后我干的第一件事,就是在PyCharm里新建了一个Python文件,命名为hello.py,然后敲下了那行经典的代码:

print("Hello, World!")

点击右键,选择Run,下方窗口输出Hello, World!的那一刻,我整个人还挺兴奋的。虽然这个程序简单到不行,但它代表了一件事:我的学习链路已经彻底跑通了。写代码、运行、看到结果,这个过程顺畅无阻,后面不管学什么,都是在往这条链路上添加内容。

我也顺手试了另外两种用法,帮你提前规避一下后续的困惑:

第一种,在命令行里交互式运行。打开命令行,输入python进入交互模式,直接输入print("Hello"),回车就能看到结果。这种方式适合快速验证一小段逻辑。第二种,在命令行里直接运行脚本文件,输入python hello.py,也能跑。第一次玩这些命令的时候,我把当前目录都搞不清,还是用cd命令一步步切过去的。这些都是正常的,别怕,多用几次就熟了。

  1. 第一周我到底学了些啥:变量、数据类型、条件判断

3.1 变量与赋值:理解“盒子”,而不是“数学课的未知数”

第一次接触变量这个概念,我最大的误区就是拿数学课的知识往上套。Python里的变量,更准确的比喻是一个“贴着标签的盒子”。你写这句代码:

score = 100

意思就是,把一个值为100的东西,放进了贴有score标签的盒子里。之后你用score这个标签,就等于在用盒子里的100。再比如说:

name = "张三" age = 25

name盒子里装的是字符串,age盒子里装的是整数。Python是一个动态类型语言,也就是说你不需要事先声明这个盒子能装什么类型的数据,直接往里塞就行,它自己能判断。这个特性给新手带来了极大的便利,但同时也埋了一个坑,下面的数据类型部分我会讲到。

3.2 数据类型:别让“1 + 1”变成了“'1' + '1'”

数据类型这个概念,是我第一周踩雷最密集的地方。Python里最常见的基础数据类型有四种:字符串(str)、整数(int)、浮点数(float)、布尔值(bool)。字符串必须用引号包住,比如"abc";整数和浮点数不用引号;布尔值只有True和False两兄弟。

我翻车的一个例子是这样的。我写了一个看似毫无问题的代码:

a = "10" b = 20 print(a + b)

结果报错:TypeError: can only concatenate str (not "int") to str。报错的信息翻译过来就是:字符串只能和字符串拼接,不能直接和整数相加。此时a是字符串“10”,b是整数20,Python根本不知道你想干嘛。

解决办法是用int()或者str()做类型转换:

a = "10" b = 20 print(int(a) + b) # 结果是30 print(a + str(b)) # 结果是"1020"

这件事给我的启发是:变量本身不知道自己装的是什么类型,需要你心里有一杆秤。写代码前,先默念一遍“这个变量现在是字符串还是数字”,能省下好多报错的烦心事。

3.3 条件判断:缩进比我想象得重要一百倍

学会变量和数据类型之后,我学的是条件判断,也就是if语句。这个语法本身特别好懂:

age = 18 if age >= 18: print("你已经成年了") else: print("你还未成年")

但真正让我抓狂的,是Python对缩进极度敏感。在其他很多语言里,代码块是用花括号{}包裹的,缩进只是为了好看;但在Python里,缩进就是语法本身,同一个代码块里的每行代码,前面的空格数必须一致,否则直接报IndentationError。

我第一次写多行if语句的时候,就是没有统一用四个空格缩进,结果报错的一瞬间完全蒙了。后来养成一个习惯:只要按下回车要写代码块内部的内容,PyCharm通常会自动帮你缩进,但如果你手动复制粘贴,一不小心就会混进不齐的空格。遇到这种报错,最直接的办法就是删掉那段代码重新手敲一遍,并设置PyCharm显示行号,方便定位到具体是哪一行出了问题。

3.4 循环:for和while的差别,一句话就能讲清

循环这部分我学得比较快,因为它和我们平时的习惯特别贴近。for循环,适合“我知道要循环多少次”的场景,比如把0到9这10个数挨个打一遍:

for i in range(10): print(i)

while循环,适合“只要条件成立就一直做下去”的场景,比如写一个猜数字的小游戏,用户猜不对就一直问:

answer = 42 guess = 0 while guess != answer: guess = int(input("猜一个数字:")) print("猜对了!")

这里要注意的是,while循环如果条件永远为真,就会变成死循环,程序会一直卡住。所以运行起来没反应的时候,先想想是不是死循环,然后Ctrl+C强制中断就行,别着急重启电脑。

  1. 踩坑记录:新手最容易遇到的几个报错与排查思路

4.1 环境变量没配好,命令行不认python命令

这个问题我已经在前面说过了,但这里还是要放进踩坑清单里再提醒一次。它的典型症状是:命令行输入python后提示“'python' 不是内部或外部命令,也不是可运行的程序或批处理文件”。这个和Python代码本身没关系,纯粹是系统PATH配置的问题。最简单的方法就是重装并勾选Add Python to PATH;不想重装的话,手动加系统环境变量也行。加完之后记得重新打开命令行,环境变量不会自动刷新。

4.2 错误提示里出现非ASCII字符:多半是中英文标点惹的祸

我有一回写代码一直报SyntaxError,但怎么看都觉得逻辑没错。后来盯了半天才发现,我用来包裹字符串的引号是中文输入法下的引号“”,而不是英文引号""。在Python世界里,所有的标点符号都必须是英文半角状态下的:括号、引号、冒号、逗号,全部都是。这个坑新手特别容易踩,尤其是在中文输入法和英文输入法之间切换的时候。

解决方法是:写代码的时候,直接切换成英文输入法;如果系统装了多个输入法,可以设置只在某个应用里默认英文。现在很多编辑器也有语法高亮,中英文引号的颜色不一样,扫一眼就能发现异常。

4.3 IndentationError:缩进相关的一切错误

IndentationError还有一个变种,叫TabError,意思是混用了Tab键和空格键来缩进。PyCharm默认会帮你把Tab键自动替换成4个空格,所以在它里面写代码一般不会遇到这个问题。但我有段时间用系统自带的记事本改代码,就踩到了Tab和空格混用的坑。

排查思路也很简单:在PyCharm底部开启“显示空格”功能,把不可见字符显示出来,就能一眼看出哪里是Tab、哪里是空格。再次强调,Python社区默认的缩进方式是四个空格,不是Tab,能用空格就永远别碰Tab键。

4.4 记不住语法怎么办:别怕,这太正常了

学习第一周,我最焦虑的不是报错,而是发现自己第二天就忘掉了头一天学的东西。比如input()这个函数的用法,我第三天上网搜了三次。后来我想通了一件事:语法本身不值得“背”,值得记住的是“有什么工具、能解决什么问题”这个地图。具体怎么写,卡壳了就去查文档、翻博客,查多了自然就记住了,没有人能一次记住所有东西。

真正有用的办法,是当天学完的知识点,晚上拿一个真实的题目练一遍。比如学了循环,就去写一个“打印九九乘法表”的小程序;学了条件判断,就去写一个“根据分数判断等级”的小脚本。代码这个东西,光看是真的学不会的,只有亲手敲出来,踩过几个报错,才能真正变成自己的。

  1. 学习复盘与时间安排:一周学多少才算正常

5.1 我的实际时间分配与节奏

很多人关心的一个问题是:我一天到底学多久,一周学到哪里算正常?我给你展示我的真实数据:

时间段学习内容投入时间
第1天安装环境、跑通Hello World2小时
第2天变量、数据类型1.5小时
第3天条件判断与缩进2小时
第4天for循环与while循环2小时
第5天列表和字典(基础操作)2.5小时
第6天综合练习:猜数字小游戏2小时
第7天复习、整理笔记1小时

我平均每天投入1.5到2.5小时不等,晚上下班到家后学,周末排得更多。这个节奏不快不慢,关键是每天都抽出时间摸一下代码,保持手感。哪怕只是复习了10分钟之前的内容,也比隔三天再爆发式学8个小时要有效十倍。

5.2 如何防止“收藏夹吃灰”和“教程囤积症”

我在第一周下载了好几个PDF教程,收藏了几十个视频链接,结果真正看完的不到十分之一。后来我给自己立了一条规矩:每收藏一个教程,就必须先看一节;每下载一份PDF,就必须当天摘抄一个知识点到自己的笔记里。这套方法很土,但对治疗“囤积症”真的有效。

另外一个有效的策略是,每天在笔记里写一小段“今日收获”,哪怕只有三行。这样一周下来,你会惊讶地发现自己其实学了挺多东西。更重要的是,这份笔记是你自己的,不是博主的知识点搬运,复习的时候特别有用。

5.3 下一步:我打算学点什么

第一周结束后,我已经可以写一些很基础的小脚本了,比如自动算BMI、根据成绩输出评语,甚至做了一个特别简陋的猜数字游戏。第二周的目标,是深入学习函数和模块,尝试把这几天写的代码封装成一个个函数,减少重复代码,顺便开始接触文件读写,这样才可能实现最开始想做的“自动处理表格数据”的愿望。

现在再回头看,第一周其实没学到多么深的东西,但它最重要的意义是验证了一件事:我这种人,是真的可以靠自学学会一门编程语言的。

学编程这件事,最容易被高估的是难度,最容易被低估的是每天一点点积累的力量。你不需要第一天就搞懂所有概念,也不需要急着写什么高端项目,只要跟着走,把环境搭好,把最基础的语法敲熟,你就算正式迈过了那道很多人没有迈过去的门槛。我的经验是:别想太多,就开始动手敲代码就对了。

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

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

立即咨询