看完本篇教程之后,可以在评论区留下你的疑问、笔记或者代码报错,大家一起交流学习!
一、Python代码行基础规则
1.基础概念
物理行:你编辑器里敲击回车分开的一行代码
逻辑行:Python解释器认定的一条完整指令
默认规则:1条物理行 = 1条逻辑语句,一行只写一条代码
2.特殊:一行书写多条语句
可以使用英文分号 ';' 隔开多条语句,但 行业规范PEP‑8强烈不推荐,代码可读性会大幅下降。
# 语法合法,但不建议日常使用a = 10; b = 20; print(a + b)
3.空行与注释规则
1. 空行不会影响程序运行,用来分隔功能代码块,优化阅读;
2. # 代表单行注释,整行后面的内容不会被程序执行;
3. 所有符号(冒号、括号、逗号、引号)必须是英文半角符号,中文符号直接报错。
二、缩进(Python最重要的语法)
1.概念
其他编程语言依靠大括号 {} 区分代码块,Python依靠缩进空格区分代码层级。
if判断、for循环、while循环、def函数、class类,行尾带冒号 ':',下一行代码必须缩进。
2.官方编码标准PEP‑8规定
1. 一级缩进固定 4个空格,禁止空格、Tab制表符混用;
2. 不要使用Tab键缩进,不同编辑器Tab宽度不一样,极易报错;
3. 同一代码块,所有行缩进空格数量必须保持一致。
代码示例
# 正确缩进if 5 > 2: print("条件成立") print("同属于if代码块")print("跳出if代码块,不受if条件管控")
缩进常见报错&特殊细节
1. IndentationError: expected an indented block:冒号之后忘记缩进;
2. 同级代码空格数目不一致直接报错;
3. 空行、注释行不需要遵守缩进对齐;
4. 缩进只用来划分代码块,普通变量定义不需要开头空格。
错误示范:
if 3>1:print("没有缩进,语法报错")
三、多行语句(一条逻辑语句拆分多行书写)
当一行代码太长,需要换行拆分,一共分为 显式换行、隐式换行 两种方式。
方式1:反斜杠 '\' 显式换行
在行尾添加反斜杠,告诉解释器下一行属于同一条语句;
注意:反斜杠后面 不能添加注释 ,会直接语法报错
# 长算式拆分多行sum_num = 1 + 2 + 3 + \ 4 + 5 + 6 + \ 7 + 8 + 9print(sum_num)
方式2:括号隐式换行(官方推荐写法)
只要代码被 ()圆括号、[]列表、{}字典/集合 包裹,代码可以直接回车换行,不需要反斜杠,是项目最常用写法。
# 列表多行书写data_list = [ "苹果", "香蕉", "橙子"]# 长表达式括号换行result = (10 * 20 + 30 / 2 - 5)print(result)
补充:多行语句 和 多行字符串区分
多行语句是 一条代码拆分成多行;多行字符串是字符串文本自带换行,依靠三引号实现,二者不要混淆。
四、字符串三种引号完整讲解
Python一共有三种引号:单引号 ' '、双引号 " "、三引号 ''' ''' / """ """,全部用来定义字符串str。
1.单引号、双引号:单行字符串
二者功能完全等价,没有区别,主要用来解决引号嵌套,避免转义符 \:
1. 字符串内部带有单引号,外层使用双引号;
2. 字符串内部带有双引号,外层使用单引号。
# 内部有单引号,外层双引号s1 = "I'm a student"# 内部有双引号,外层单引号s2 = '他说了一句"加油"'# 引号冲突时使用转义符 \s3 = 'I\'m OK'print(s1,s2,s3)
单行引号内部不能直接回车换行,换行需要写入转义字符 \n
text = "第一行\n第二行\n第三行"print(text)
2.三引号(三单引号、三双引号):多行字符串
核心特点:
1. 支持直接回车换行,自动保存换行格式;
2. 字符串里面可以直接书写单引号、双引号,无需转义;
3. 常用来写多行文本、SQL语句、函数文档注释docstring、长说明文字。
代码案例:
# 三双引号多行文本msg = """欢迎来到Python课堂1.学习缩进语法2.学习多行语句3.学习字符串引号"""print(msg)# SQL案例sql = """SELECT name,ageFROM userWHERE name = '小李'"""print(sql)
引号对比表格
引号类型 | 是否支持多行 | 特点 | 适用场景 |
单引号 ' | 单行 | 简洁 | 普通短文本 |
双引号 " | 单行 | 工程常用 | 普通短字符串 |
三引号 ''' """ | 多行 | 自带换行、内嵌引号无需转义 | 长文本、注释、SQL |
引号避坑细节
① 首尾引号必须严格匹配,开头三双引号,结尾也必须三双引号,不能混用,'xxx"直接语法报错;
② 三个引号中间不要插入多余空格,' ''不等于''';
③ 三引号除了字符串,还常用来书写多行注释;
④ 想要输出三引号字符,需要使用转义符 \""";
⑤ 所有引号必须是英文符号,中文引号 “” 会直接报错。
五、综合易错特殊知识点汇总
1. 冒号 ':' 是代码块开启标志,if、for、while、def后面忘记加冒号直接报错;
2. 空格Tab不要混用缩进,新手统一使用4空格;
3. 反斜杠换行末尾不能加注释;
4. 所有运算符、括号、引号必须英文半角;
5. 一行尽量只写一条代码,拒绝大量分号堆砌语句;
6. 单双引号等价,优先交叉嵌套省去转义;多行文本优先三引号;
7. 三引号字符串会保留你回车、空格缩进,输出格式和书写格式一模一样。
六、课后练习题(3题)
习题1(缩进基础)
找出下面代码的错误并且修正
习题2(多行语句)
把下面超长算式,分别使用反斜杠、圆括号两种方式拆分多行书写
num = 2*3 + 4*5 + 6*7 + 8*9
习题3(引号实操)
定义字符串:老师说:'今天记得练习Python',写出两种最优写法
课程到这里就结束啦,有代码报错、看不懂的知识点,可以在评论区留下你的问题,欢迎留言交流!