Python入门:写出你的第一行Python代码
Python入门写出你的第一行Python代码一、开篇真正的编程从这一行开始前面七篇文章我们一直在做准备工作——装Python、配环境、选编辑器。今天终于到了最激动人心的时刻正式写代码。⌨️ 编程说到底就一件事用代码让计算机按你的想法工作。而这一切都从在屏幕上打印出一行文字开始。这行文字像是一扇门——推开它你就进入了编程的世界。这一篇我会带着你从最基础的Python交互环境开始到创建完整的Python脚本文件再到理解Python代码的基本执行逻辑。我们不赶进度每一个细节都要搞明白。二、三种运行Python的方式在正式开始之前你需要知道Python代码有三种运行方式。每种方式都有自己的适用场景。2.1 方式一交互式环境Python REPL打开命令行输入pythonMac/Linux输入python3进入交互式环境C:\Users\你的用户名python Python3.12.1(tags/v3.12.1:2305ca5, Dec72023,22:03:25)[MSC v.193764bit(AMD64)]on win32 Typehelp,copyright,creditsorlicenseformoreinformation.看到这个符号了吗这是Python在说“我准备好了请输入你的命令”。在这个环境中你输入一行代码按回车Python立刻执行并显示结果print(Hello, Python!)Hello,Python!112你好*3你好你好你好importmathmath.sqrt(16)4.0 交互式环境适合快速验证想法、测试一小段代码、临时计算。但它不适合写长程序因为代码无法保存。退出交互式环境输入exit()或按Ctrl ZWindows/Ctrl DMac/Linux。2.2 方式二运行Python脚本文件把代码写在.py文件里然后一次性地让Python执行整个文件。这是日常开发的主要方式。① 创建一个文件hello.py打开它用记事本、VS Code、PyCharm都行② 输入以下代码# 这是我的第一个Python脚本print(*40)print(Hello, Python 世界)print(今天开始我要学编程了)print(*40)③ 在命令行中运行python hello.py④ 输出结果 Hello, Python 世界 今天开始我要学编程了 ✅ 你刚刚创建并运行了你的第一个Python程序。虽然它只是打印了几行文字但这是万里长征的第一步。2.3 方式三IDE中的运行在PyCharm或VS Code中打开.py文件点击运行按钮▶。IDE会在后台调用Python解释器来执行你的脚本并把输出结果显示在IDE的终端面板里。这和命令行运行本质完全一样只是IDE帮你省去了手动输入命令的步骤。三、你的第一行代码解剖 print()3.1 print() 的基本用法print(Hello, World!)这行代码看起来很简单但让我们逐字拆解搞懂每一个部分print函数名。函数就是一段包装好的、能做特定事情的代码。print这个函数做的事情是把内容显示到屏幕上()括号表示调用这个函数。在Python中调用函数必须加括号即使是空括号Hello, World!参数。这是传给print函数的数据告诉它把这个字符串显示在屏幕上整个print(Hello, World!)就是一句完整的调用print函数并传入字符串参数的语句3.2 print() 可以打印多种类型的数据# 打印字符串print(你好世界)# 打印数字print(42)print(3.14159)# 打印表达式的结果先计算后打印print(12345)# 打印布尔值print(True)print(False)# 打印多个内容用逗号分隔print(答案,42,正确,True)# 打印列表print([1,2,3,4,5])运行这些你会看到Python的print()函数几乎能打印任何类型的数据不需要像有些语言那样先转成字符串。3.3 print() 的默认行为# 每次print默认换行print(第一行)print(第二行)print(第三行)输出第一行 第二行 第三行# 用end参数改变结束字符默认是换行符\nprint(第一行,end )print(第二行,end → )print(第三行)输出第一行 第二行 → 第三行# 用sep参数改变多个值之间的分隔符默认是空格print(苹果,香蕉,橘子,sep | )print(2025,5,30,sep-)输出苹果 | 香蕉 | 橘子 2025-5-30 这就是print()函数的三个最常用参数的完整形态print(*objects,sep ,end\n)# *objects: 要打印的内容可以多个# sep: 多个内容之间的分隔符默认为空格 # end: 打印结束时的字符默认为换行符\n四、理解代码执行的过程4.1 逐行执行Python代码是从上到下逐行执行的。这是最基本也是最重要的规则。print(第一步程序开始执行了)name小明print(第二步变量name已经被创建了)age25print(f第三步{name}今年{age}岁)print(第四步程序执行完毕)输出第一步程序开始执行了 第二步变量name已经被创建了 年龄25 第三步小明今年25岁 第四步程序执行完毕每一行按顺序执行前面的代码执行完才执行后面的代码。这个规则虽然简单但它是理解所有Python程序的基础。4.2 变量在运行中的变化# 变量的值在程序运行过程中可以改变score80print(f初始分数{score})scorescore5# 加5分print(f加分后{score})scorescore-10# 扣10分print(f扣分后{score})score100# 直接重置为100print(f重置后{score})输出初始分数80 加分后85 扣分后75 重置后100⚠️ Python程序执行的基本原则从上到下逐行执行变量后定义的覆盖先定义的每一行代码执行时使用的都是变量当前的值五、Python中的错误信息阅读指南初学编程遇到错误是不可避免的。能把错误信息读懂是编程水平的一个重要标志。5.1 语法错误SyntaxErrorprint(helloFilestdin,line1print(hello^SyntaxError:unexpected EOFwhileparsing当Python遇到无法理解的代码结构时会抛出SyntaxError。常见原因括号没配对开了没关字符串的引号没配对冒号忘了写缩进不对 阅读错误信息的方法从最后一行开始读。错误信息最后一行通常最直接地告诉你出了什么问题。然后看上面的行号定位到具体位置。5.2 名称错误NameErrorprint(name)NameError:namenameisnotdefined使用了还没有定义过的变量名。解决方法检查变量名拼写是否正确或者在使用前先定义它。5.3 类型错误TypeErrorprint(数字:5)TypeError:can only concatenatestr(notint)tostr把不同类型的数据用错了地方。这里不能用直接连接字符串和数字。应该这样print(数字:str(5))# 把数字转成字符串print(数字:,5)# 用逗号分隔print(f数字:{5})# 用f-string5.4 缩进错误IndentationErrorifTrue:print(hello)# 这行没有缩进IndentationError:expected an indented blockPython用缩进来划分代码块。if、for、while等语句后面必须跟缩进的代码块。✅ 面对错误时的心态错误是朋友不是敌人。每个错误信息都在告诉你哪里出了问题帮你改进代码。不要一看到红色的错误就慌仔细读错误信息它已经把问题和位置告诉你了。六、写一个稍微复杂点的程序学了基础知识我们来把它们组合起来写一个有实际逻辑的程序。6.1 个人介绍程序 个人介绍程序 这个程序会收集你的信息然后生成一份个性化的自我介绍 print(*50)print(欢迎使用个人介绍生成器)print(*50)# 收集信息nameinput(请输入你的名字)ageinput(请输入你的年龄)cityinput(请输入你所在的城市)hobbyinput(请输入你的爱好)jobinput(请输入你的职业/专业)# 计算出生年份粗略估算fromdatetimeimportdatetime current_yeardatetime.now().year birth_yearcurrent_year-int(age)# 生成自我介绍print()print(*50)print(f{name}的自我介绍)print(*50)print()print(f大家好我叫{name}{age}岁来自{city}。)print(f我是一名{job}平时喜欢{hobby}。)print(f我大概出生在{birth_year}年。)print(f我的名字有{len(name)}个字听起来不错吧)print()print(很高兴认识大家一起加油学Python)print(*50)6.2 运行效果 欢迎使用个人介绍生成器 请输入你的名字小明 请输入你的年龄20 请输入你所在的城市上海 请输入你的爱好打篮球 请输入你的职业/专业计算机科学 小明的自我介绍 大家好我叫小明20岁来自上海。 我是一名计算机科学平时喜欢打篮球。 我大概出生在2005年。 我的名字有2个字听起来不错吧 很高兴认识大家一起加油学Python ⌨️ 这个程序虽然简单但已经包含了编程的核心要素输入input()获取用户数据处理计算出生年份、获取名字长度输出用print()展示结果几乎所有的程序都是这个模式接收输入→处理数据→输出结果。不管是简单的控制台程序还是复杂的Web应用核心都是这三步。七、Python交互式环境的实用技巧7.1 用交互环境做计算器# 基本运算23*414(23)*4202**10# 2的10次方102417//5# 整除317%5# 取余2# 浮点数运算10/33.3333333333333335round(10/3,2)3.337.2 用上下方向键复用命令在交互环境中按上方向键 ↑调出上一次输入的命令按下方向键 ↓调出下一次输入的命令连续按↑可以回溯更早的命令7.3 使用下划线访问上一次结果102030_# 下划线代表上一次计算的结果30_*260_10707.4 Tab自动补全在交互环境中输入函数名的一部分按Tab键pri[TAB]# 自动补全为 printimportosos.pa[TAB]# 列出os模块中pa开头的所有名称os.path.jo[TAB]# 自动补全为 os.path.join八、代码风格从小养成好习惯8.1 空格的使用好的空格使用能让代码可读性大幅提升# 推荐的写法运算符两边有空格x5yx3name小明# 不推荐的写法挤在一起难读x5yx3name小明# 逗号后面加空格fruits[苹果,香蕉,橘子]# 函数参数逗号后加空格print(你好,世界,sep|)8.2 命名规范Python社区有一套约定俗成的命名规范PEP 8# 变量名用小写字母下划线snake_casestudent_name小明total_score95max_retry_count3# 常量名用全大写下划线PI3.14159MAX_CONNECTIONS100DEFAULT_TIMEOUT30# 不要用拼音# 推荐的命名student_count42# 不推荐的命名xuesheng_shuliang428.3 善用空行分隔代码# 导入模块importosimportsys# 定义常量MAX_SCORE100PASS_SCORE60# 主逻辑student_name小明student_score85ifstudent_scorePASS_SCORE:print(f{student_name}通过了考试)else:print(f{student_name}没有通过考试)用空行把不同功能的代码块分隔开就像写文章时分段落一样。九、常见问题与排错9.1 “SyntaxError: invalid character”printhello# SyntaxError: invalid character (UFF08)这是很多新手会踩的坑用了中文的括号或引号。中文括号和英文括号()在Python中是完全不同的东西。✅ 解决方法确保所有标点符号都是英文半角的。在代码编辑器中设置字体让中英文字符的差异更加明显。9.2 print()中引号的使用# 单引号和双引号在Python中是等价的print(hello)# 单引号print(hello)# 双引号效果完全一样# 字符串中包含引号时用另一种引号包裹print(Im a student)# 包含单引号外部用双引号print(他说你好)# 包含双引号外部用单引号# 或者用转义符print(I\m a student)# \ 表示这是一个单引号字符不是字符串的结束print(他说\你好\)# \ 同上9.3 中文输出问题Python 3默认使用UTF-8编码处理中文一般没有问题。但如果遇到乱码# 文件头部添加编码声明虽然Python 3通常不需要# -*- coding: utf-8 -*-print(中文在Python 3中直接输出没有问题)十、本篇小结✅ 恭喜你今天正式完成了Python编程的第一步。核心收获三种运行方式交互环境快速测试、脚本文件日常开发、IDE运行最高效print()函数最基本的输出方式支持多个参数、自定义分隔符和结束符逐行执行Python从上到下按顺序执行代码错误阅读SyntaxError、NameError、TypeError是最常见的三类错误代码风格好的空格习惯和命名规范从一开始就养成 编程和学习任何技能一样——看完教程不等于会了自己动手敲过代码、改了代码、遇到了bug并解决了才算真正的掌握。下一篇我们将从注释开始深入Python的基础语法。