ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Python零基础入门:环境搭建与核心语法实战笔记

Python零基础入门:环境搭建与核心语法实战笔记 搞Python的第一篇笔记我打算从最底层的环境搭建开始写起。标题就叫“【python】学习笔记1”内容锁定在“python安装”和第一批核心语法。这篇笔记适合零基础准备入门的自学党、想转行做数据分析或自动化脚本的办公族以及被各种教程绕晕、想找一条清晰路线的人。我会按照自己实际踩坑的顺序来整理装好Python解释器、选对开发工具、跑通第一个程序、理解变量和数据类型、掌握条件判断和循环最后把初学者最容易碰到的报错集中盘一遍。这些内容都是我自己验证过的直接照着操作基本能顺滑跑通。1. 环境搭建把Python解释器装进电脑1.1 下载安装包与版本选择Python的官网是python.org下载页面里会有很多版本新手容易看花眼。我的建议是挑当前最新的稳定版比如3.10、3.11、3.12这一类3.x系列直接认准带有“Stable”标记的就行。别碰2.x的旧版本那已经是历史包袱现在的新库和新语法都不再支持学它纯属浪费精力。下载的时候要看清楚自己的系统位数。Windows用户右键“此电脑”选“属性”能看到“系统类型”里写的是64位还是32位。绝大多数现代电脑都是64位那就下载Windows installer (64-bit) 这个文件。如果不小心下错了32位版本虽然也能跑起来但以后装某些对性能有要求的第三方库可能会碰到奇奇怪怪的问题。安装过程里有一个特别关键的勾选项Add Python to PATH。这个选项通常在安装界面最底部默认是不勾选的但如果不勾选装完之后在命令行里输入python会提示“不是内部或外部命令”到时候还得手动配置环境变量对新手来说非常劝退。所以安装时一定要把这个选项勾上这一步能省掉后面一大半麻烦。安装路径方面可以用默认的C盘路径也可以自定义到一个好记的位置比如D:\Python3。自定义路径的好处是以后找文件、排查问题都直观但要注意路径里不要出现中文和空格否则某些第三库在编译时可能会报编码错误。1.2 验证安装是否成功装完之后怎么确认真的装好了很简单按Win R键打开运行窗口输入cmd回车打开命令行窗口然后敲一句python --version如果显示类似Python 3.11.4这样的版本信息说明安装成功。如果提示找不到命令先别慌多半是刚才那个“Add Python to PATH”没有勾选或者勾选了但没生效。这时候有两个补救办法。第一个办法是手动添加环境变量右键“此电脑”选“属性”点“高级系统设置”再点“环境变量”在“系统变量”里找到 Path 这一项双击编辑把Python的安装路径和scripts目录都加进去。比如我装在D:\Python3那就加两条一条是D:\Python3一条是D:\Python3\Scripts后者主要为了让pip命令也能被识别。第二个办法更省事直接把之前装好的Python卸载掉重新运行安装包这次记得勾选“Add Python to PATH”再装一遍。不要觉得重装麻烦对于新手来说重装往往比手动配环境变量更快、更稳。装好之后还可以顺手验证一下pip这是Python的包管理工具以后装第三方库全靠它。在命令行里输入pip --version能输出版本信息就说明pip也正常。后面你需要安装requests、pandas这类库时一条pip install 库名就能搞定。2. 开发工具选型别在编辑器上犯选择困难症2.1 三种常用工具横向对比Python代码说白了就是纯文本文件理论上用记事本都能写。但真正上手之后你会发现一个好用的编辑器能显著提升效率。我自己用过不少工具这里把最适合新手的三种拉出来对比。工具适合场景优点缺点IDLE零基础、临时跑小代码装完Python自带零配置打开即用提示功能弱界面简陋VS Code日常开发、学习全程免费、插件丰富、调试方便、跨平台需要花点时间配置PyCharm正式项目、专业开发功能最全智能提示强集成了很多开发工具社区版阉割部分功能专业版收费网上有很多人推荐新手直接上PyCharm但我的看法不一样。PyCharm确实强大但对刚接触编程的人来说界面太复杂各种窗口和按钮容易让人产生“我是不是漏学了什么”的错觉。而IDLE又太简陋写稍长一点的代码就感觉施展不开。2.2 我推荐的组合VS Code 插件如果让我现在给新手一个配置方案我会推荐VS Code。它下载免费断网也能装启动速度比PyCharm快而且配合插件后写代码的体验并不比PyCharm差太多。具体配置就三步。第一步去VS Code官网下载安装包安装过程一路点“下一步”不用改任何选项。第二步打开软件左侧边栏找到扩展市场图标搜索“python”安装微软官方出的那个Python扩展注意认准发布者是Microsoft避免装到奇怪的同名扩展。第三步按CtrlShiftP打开命令面板输入Python: Select Interpreter选择你刚装好的那个Python解释器版本。配置完成之后VS Code就具备了语法高亮、代码补全、运行调试这些核心功能。写好的代码文件保存时以.py结尾比如hello.py然后在编辑器里右键选“Run Python File in Terminal”代码就能直接运行并看到输出结果。在这里也要单独说一句如果你电脑配置比较陈旧内存只有4GVS Code可能跑起来稍有些吃力。这种情况下我建议先用IDLE过渡等后面代码量真的大了再换工具完全没问题。3. 第一个程序先让电脑开口说话3.1 用 print 输出内容Python入门的仪式感来自那一句print(Hello, World!)。打开编辑器新建立一个文件输入这句代码保存为hello.py然后运行。屏幕上如果打印出Hello, World!恭喜你能亲手让电脑执行指令了。print是Python内置的函数作用就是把括号里的内容输出到屏幕上。这里有几件细节值得理解透彻。第一括号里的内容要用引号包起来单引号和双引号都可以效果一样但不能一边是单引号一边是双引号。比如print(Hello)是合法的print(Hello)也是合法的但print(Hello)就会直接报语法错误。第二print可以同时输出多个内容中间用逗号分隔。比如print(我叫, 小明, 今年, 18)运行结果会是我叫 小明 今年 18。注意逗号会在输出时自动变成一个空格。第三print默认输出完会自动换行。如果你不希望换行可以加一个end参数比如print(Hello, end ) print(World)这样两次输出的内容就会出现在同一行中间用空格隔开结果是Hello World。刚开始学编程的人容易忽略的是缩进和标点符号必须用英文半角。在中文输入法状态下敲出的括号和逗号Python是不认识的。这个坑几乎每个新手都踩过我当初也是被一个中文冒号活活在编辑器里耗了二十分钟。3.2 用 input 让程序听你说话输出学会之后下一步就是让程序能接收用户的输入这就要用到input函数。写一个“自我介绍”的小程序name input(请输入你的名字) print(你好, name)运行后控制台会先显示“请输入你的名字”等你敲入文字并按下回车程序才会继续执行把“你好 [你刚才输入的内容]”打印出来。这里演示了一个非常重要的概念——变量。name就是一个变量它像一个盒子负责把用户输入的内容存起来等后面需要的时候随时取出来用。input函数有一个容易埋雷的地方不管你输入的是数字还是文字它返回的原始类型永远是字符串。打个比方你问用户“请输入你的年龄”他输入了18但你拿到的18在Python眼里是文本“18”不是数值18。如果你直接用age 1去计算明年多大程序会直接报错提示你不能把字符串和整数相加。正确的做法是做一次类型转换用int()把字符串转成整数age int(input(请输入你的年龄)) print(明年你, age 1, 岁)类似的还有float()转小数、str()转字符串。写程序的时候心里时刻要有一根弦类型对不对这比代码能不能跑通过重要得多。4. 核心语法速览变量、类型、判断和循环4.1 变量与常用数据类型Python是一门动态类型语言意思是变量不需要提前声明类型。你可以直接写a 5也可以下一行写a hello解释器都不会拦你。这种灵活性对新手友好但也会带来一个隐患代码写长了之后你可能会忘记某个变量里存的到底是什么类型导致运行时错误。所以给变量起名的时候尽量语义化比如用user_name而不是n用total_price而不是t。Python里最常用的几种数据类型我列了一张表类型写法示例说明int整数age 18没有小数点的数字float浮点数price 19.9有小数点的数字str字符串name 小明文本内容用引号包裹bool布尔is_student True只有 True 和 False 两个值list列表scores [80, 90, 85]一组数据可追加可删除dict字典person {name: 小明, age: 18}键值对结构适合表示有属性的对象在列表和字典上下功夫特别值。初学者经常搞不清它们的区别——列表是按顺序排的一串元素想取第2个就写scores[1]字典是“按名字找值”想知道这个人的年龄就写person[age]。这两个结构几乎覆盖了日常自动化脚本里80%的数据组织需求。顺便解释一下索引为什么从0开始。你要是较真问Python的设计者他们会回你一句“从0开始是Python的惯例”。实际上这是从C语言继承过来的传统scores[0]表示列表里的第一项。新手在这里会犯迷糊scores[1]取出的其实是第二项特别容易对不上号。4.2 条件判断让程序学会做选择程序最常见的逻辑之一就是根据条件做不同的事这用到if、elif、else三个关键词。来看一个判断成绩等级的例子score 85 if score 90: print(优秀) elif score 60: print(及格) else: print(不及格)这段代码运行后因为score是85会走中间那条分支输出“及格”。理解这段代码的关键在于两点。第一是条件判断的顺序从上到下依次判断一旦某个条件成立后面的分支就全部跳过。所以条件的先后顺序是有讲究的如果把score 60写在前面那85分在第一步就被拦截了永远到不了“优秀”那条分支。第二是缩进同一层逻辑的代码必须缩进对齐。Python通过缩进来区分代码块这和其他语言用花括号{}不一样。这里还有一个经常被忽略的比较运算判断相等用的是而不是。是赋值意思是把右边的值存到左边变量里才是判断左右两边是否相等。新手写if 1 1会立刻报错原因就是混用了这两者。5.1 条件判断的延伸逻辑运算现实里的判断很少只有单一条件。比如商家要发优惠券要求是“消费满100元且会员等级不低于2级”这就是两个条件同时成立。在Python里用and表示“且”用or表示“或”用not表示“取反”。spend 150 member_level 3 if spend 100 and member_level 2: print(满足优惠券发放条件)还可以更进一步判断一个数是否在某个区间比如判断及格且非满分score 85 if 60 score 100: print(及格但不是满分)这种连续比较写法在Python里是允许的读起来跟数学表达式一样自然。相比写score 60 and score 100这种完整写法紧凑不少也很容易看懂。这是我日常写代码比较偏爱的一种风格新手也可以大胆用。5.2 循环让重复的事自动跑生活中大量任务是重复性的。假如你要把一个列表里的每个数字都打印出来手写五遍print就够痛苦了要是一百遍呢这就要用for循环。scores [80, 90, 85] for s in scores: print(s)运行结果会依次输出80、90、85。这个语法可以这样理解对于列表scores里的每一个元素把它临时命名为s然后执行一次缩进的代码块。循环几次就执行几次。如果不想遍历列表只想要一个递增的序列可以用range函数配合使用for i in range(5): print(i)输出是0 1 2 3 4注意还是从0开始一共5个数字。如果想从1到5就写成range(1, 6)左闭右开含头不含尾。这个设计初看奇怪习惯之后会发现写代码非常方便比如要生成10个1到3之间的随机数或者按行处理一个文件的前N行都靠这个机制。还有一种while循环它更适合“不知道什么时候结束”的场景。比如做一个猜数字的小游戏用户一直猜猜对了才退出secret 7 guess 0 while guess ! secret: guess int(input(请猜一个数字)) print(猜对了)这里的while guess ! secret表示只要guess不等于secret就不断重复执行循环体里的内容。一旦用户输入了7条件不再满足循环自然结束接着打印“猜对了”。while循环有一个常见风险是死循环。如果条件永远为真程序就会一直卡在那里不结束。调试的时候遇到程序没反应先检查循环条件有没有可能一直成立。5. 新手最容易踩的报错和排查思路5.1 环境与命令类报错学习Python的头两周我几乎每天都会在命令行里碰到“报错”。有些报错看起来很吓人其实原因很简单。整理几个高频的python 不是内部或外部命令也不是可运行的程序或批处理文件。这个提示出现在Windows命令行里说明系统在环境变量里没有找到Python。解决办法前面说过要么重装时勾选“Add Python to PATH”要么手动配置环境变量。pip 不是内部或外部命令。pip是跟着Python一起装的正常情况下在命令行里直接输入pip就能用。出现这个提示大概率是Python安装目录下的Scripts文件夹没有加到环境变量里。处理方式和上面一样把Scripts目录路径补进Path里就行。还有一种是“我已经装了Python但命令行里显示的是另一个版本”。这种情况很常见原因是电脑里存在多个Python版本命令行找到的是旧的或者Anaconda自带的那个。不同的安装来源会在环境变量里产生冲突输入where python可以看到命令行实际调用的是哪个路径。报错信息常见原因处理办法python 不是内部或外部命令未加入PATH或安装异常重新勾选Add Python to PATH并重装pip 不是内部或外部命令Scripts目录不在PATH手动补全环境变量命令行版本和预期不一致多个Python共存输入where python检查路径ModuleNotFoundError: No module named xxx第三方库未安装执行pip install xxx安装5.2 语法与逻辑类报错这类报错的位置通常精确到行号报错信息也会给出具体原因新手要养成“读最后一行”的习惯。报错信息里最下方的一段往往是关键。SyntaxError: invalid syntax这表示某个地方语法写错了。常见原因是引号或括号不匹配、少写了冒号、中英文标点混淆。排查技巧是在出错的代码行前后多看几行定位到具体字符。NameError: name xxx is not defined意思是“变量xxx没有被定义”。可能是拼写错误也可能是变量在使用之前没有赋值。调试的时候先在代码里搜索这个变量名看看是不是大小写写错了。TypeError: can only concatenate str (not int) to str这是个典型的类型错误。我用一个案例来说明。你写了一句print(总价 total)其中total是一个数字而字符串和数字用拼接时Python会拒绝执行。解决办法是把数字转成字符串print(总价 str(total))或者直接用逗号print(总价, total)。IndexError: list index out of range这是取列表元素时下标越界了。比如一个列表只有3个元素合法下标是0、1、2你却尝试取scores[3]程序就会抛这个异常。排查时先打印出列表的长度再检查下标有没有超出范围。5.3 读报错信息的通用技巧很多初学者一看到控制台飘红就开始慌其实报错信息是程序给你最靠谱的线索。我的习惯是三步走第一步看最底部的异常类型搞清楚是哪一类问题在这个阶段只需要记住几个常见的就行第二步看提示的文件名和行号定位到具体代码第三步把那一行代码单独抽出来在脑子里模拟一遍执行过程检查变量值、类型和符号。举个例子报错信息是这样的Traceback (most recent call last): File main.py, line 8, in module print(你好 year) TypeError: can only concatenate str (not int) to str第一眼看上去很长但最有价值的是最后一行它告诉你第行代码中字符串 “你好” 试图和一个整数拼接导致报错。再去看看year的结果果然是从input里拿到的原样字符串因为input返回的是字符串但这里是year说明year本身是字符串。等一下我们假设year是从表单拿到的数字经过转换后变成整数就会这样报错。所以要把整数用str(year)包一层或者改回print(你好, year)。这种读报错–定位–修复的流程练习十次左右就会形成肌肉记忆。学习编程的第一关其实不是“写代码”而是“面对报错不慌”。你处理报错的能力越强学习效率就越高。6. 我给初学者的几条经验总结笔记写到最后想说几句实际操作的体会。第一代码一定要亲自敲一遍而不是“看会了”。我见过太多人收藏了大量教程打开视频盯着看感觉每一步都懂真正自己写的时候却一行都敲不出来。看代码和写代码是两种能力后者只能靠手敲练出来。第二遇到报错不要急着抄到搜索引擎里。先自己读一遍报错信息试着找到问题所在。实在解决不了再把报错信息原样贴到搜索框里一般都会有前人踩过同一个坑。直接搜“报错原文自己的场景关键词”比漫无目的地搜索高效得多。第三基础语法过完之后尽快去做一个自己能用到的小项目。哪怕只是写一个自动整理桌面文件的脚本、做一个BMI计算器、写一个简单的记账程序都行。做项目才是把语法内化的过程。语法书读十遍不如自己动手写一个小工具遇见的每个报错都会变成真正的经验。这篇笔记记录的是Python起步的完整过程也是我自己真实花费时间走过的一条路。后续我会继续更新系列的下一篇到时候往函数和文件处理这些方向再深入一层。
返回列表