作为一门 “优雅且易上手” 的编程语言,Python 的语法规则其实很有规律。今天就带大家系统梳理 Python 程序的核心语法元素,从格式到函数,每个知识点都配实例,新手也能轻松看懂~
一、程序的格式框架:缩进是 “隐形的代码块”
和 Java、C++ 用大括号{}划分代码块不同,Python 靠缩进来识别逻辑结构 —— 这是 Python 最独特的语法规则之一,也是新手最容易踩坑的点!
核心规则:
- 缩进用 4 个空格(推荐)或 1 个 Tab 键,全程要统一(混用空格和 Tab 会报错)
- 同一级逻辑的代码必须保持相同缩进
- 代码块(如 if、循环内)要比外层多一层缩进
# 正确示例:缩进统一,逻辑清晰
score = 85
if score >= 80:
print("成绩良好") # 比if多4个空格,属于if代码块
print("继续加油!") # 同一代码块,缩进相同
else:
print("成绩合格") # else代码块,缩进与if一致
# 错误示例:缩进混用(空格+Tab),会报IndentationError
score = 85
if score >= 80:
print("成绩良好") # 4个空格
int("继续加油!") # 1个Tab(与空格混用) pr
二、注释:给代码 “写说明书”
注释是写给人看的代码说明,Python 执行时会忽略注释。学会写注释,不仅方便自己日后回看,也能让别人快速理解你的代码。
两种注释方式:
- 单行注释:用#开头,注释内容跟在后面
-
- 可以单独占一行,也可以跟在代码行末尾
- 多行注释:用 3 个单引号'''或 3 个双引号"""包裹
-
- 适合写大段说明,也可用于临时注释多行代码
# 单行注释:单独占一行,说明下面代码的功能
# 功能:计算两个数的和
a = 10
b = 20
result = a + b # 行尾注释:这里是求和运算,结果存到result里
"""
多行注释:用3个双引号包裹
适合写详细说明,比如函数功能、参数含义
下面这段代码是打印结果
"""
print(f"10+20的结果是:{result}")
'''
也能用3个单引号当多行注释
临时注释代码时超方便:
print("这段代码被注释了,不会执行")
print("所以运行时看不到这两行")
'''
三、命名与保留字:给变量 / 函数 “起好名字”
给变量、函数起名时,要遵守规则 —— 否则 Python 会不认识;同时要避开 “保留字”,这些是 Python 的 “专用词汇”,不能当名字用。
1. 命名规则(必须遵守):
- 只能由字母、数字、下划线组成
- 不能以数字开头(如123name错误,name123正确)
- 区分大小写(Name和name是两个不同的名字)
- 不能用 Python 保留字(比如if、for、while都不行)
2. 命名规范(建议遵守,提升可读性):
- 见名知意:比如用age表示年龄,student_name表示学生姓名,别用a、b1这种模糊的名字
- 变量 / 函数名:用 “下划线分隔法”(如user_info、calculate_sum)
- 类名:用 “驼峰命名法”(首字母大写,如Student、UserData)
3. 常见保留字(避坑清单):
Python 有 35 个保留字,常用的比如:if、else、elif、for、while、def、class、import、return、break、continue。
想查看所有保留字?运行这段代码就行:
import keyword # 导入关键字模块
print(keyword.kwlist) # 打印所有保留字
四、字符串:处理文本的 “万能容器”
字符串是 Python 中最常用的数据类型,用来表示文本(比如名字、句子、地址),用单引号' '、双引号" "或三引号''' '''包裹都可以。
1. 字符串的 4 个常用操作:
- 定义:单双引号无区别,三引号支持多行文本
- 拼接:用+连接两个字符串
- 重复:用*让字符串重复 N 次
- 索引 / 切片:按位置获取字符(Python 从 0 开始计数)
# 1. 定义字符串
s1 = '我是单引号字符串'
s2 = "我是双引号字符串"
s3 = '''我是三引号字符串
支持换行
不用加转义符'''
# 2. 拼接与重复
print("Hello" + " Python") # 输出:Hello Python
print("重复3次:" + "abc" * 3) # 输出:重复3次:abcabcabc
# 3. 索引与切片(s = "Python",索引0-5对应每个字符)
s = "Python"
print(s[0]) # 取第1个字符:P(索引从0开始)
print(s[-1]) # 取最后1个字符:n(负索引从后往前数)
print(s[1:4]) # 切片:取索引1到3的字符(左闭右开),结果:yth
2. 转义字符:处理特殊符号
当字符串里有'、"、换行等特殊内容时,用\转义:
- \n:换行
- \t:制表符(类似按 Tab 键)
- \':表示单引号(避免和字符串开头的'冲突)
print("He said: \"I love Python\"") # 输出:He said: "I love Python"
print("姓名:张三\n年龄:20") # 换行输出
# 结果:
# 姓名:张三
# 年龄:20
五、赋值语句:给变量 “装数据”
赋值语句用=表示,把右边的值 “装进” 左边的变量里(注意:=不是 “等于”,是 “赋值”)。Python 的赋值很灵活,支持多种写法。
3 种实用赋值方式:
- 普通赋值:一个变量装一个值
- 多变量赋值:一行给多个变量赋值(左右数量要一致)
- 增量赋值:简化 “变量 = 变量 + 数值” 的写法
# 1. 普通赋值
age = 25
name = "李四"
# 2. 多变量赋值(常用!比如交换两个变量的值)
x, y = 10, 20 # x=10,y=20
x, y = y, x # 交换x和y的值,现在x=20,y=10
# 3. 增量赋值(+=、-=、*=、/=都可以)
count = 0
count += 1 # 等价于 count = count + 1,结果count=1
count *= 3 # 等价于 count = count * 3,结果count=3
六、input () 函数:获取用户输入
想让程序和用户互动?用input()函数!它会等待用户在键盘输入内容,按回车后把输入的内容返回(注意:返回的是字符串类型,就算输入数字也是字符串)。
用法示例:
# 1. 基础用法:获取输入并打印
name = input("请输入你的名字:") # 括号里是提示语,用户输入后存到name里
print(f"你好,{name}!") # 输出:你好,XX!(XX是用户输入的名字)
# 2. 关键:输入数字要转换类型
# 错误示例:input返回字符串,直接运算会报错
age = input("请输入你的年龄:")
print(age + 1) # 报错!字符串不能和数字相加
# 正确示例:用int()/float()转换类型
age = int(input("请输入你的年龄:")) # 转成整数
print(f"明年你就{age + 1}岁啦!") # 正确:整数可以运算
七、分支语句:让程序 “做选择”
分支语句用来实现 “条件判断”—— 满足 A 条件就做 A 事,满足 B 条件就做 B 事,否则做 C 事。Python 里用if、elif、else组合实现。
语法结构:
if 条件1:
# 条件1成立时执行的代码块
elif 条件2:
# 条件1不成立、条件2成立时执行的代码块
elif 条件3:
# 前面条件都不成立、条件3成立时执行的代码块
else:
# 所有条件都不成立时执行的代码块
实用示例:根据分数判断等级
score = int(input("请输入你的考试分数:"))
if score >= 90:
print("等级:优秀")
elif score >= 80: # 隐含条件:score < 90
print("等级:良好")
elif score >= 60: # 隐含条件:score < 80
print("等级:合格")
else: # 隐含条件:score < 60
print("等级:不合格")
注意:elif可以有多个,else是可选的;条件判断是 “从上到下” 的,满足一个就不会再判断后面的条件。
八、eval () 函数:执行字符串里的表达式
eval()函数的作用是 “把字符串当成 Python 代码执行”,比如把字符串"1+2"变成表达式1+2并计算结果,还能把字符串格式的数字转成对应类型。
3 个常用场景:
- 计算字符串表达式
- 转换字符串为数字(比 int ()/float () 更灵活)
- 动态执行简单代码
# 1. 计算字符串表达式
result1 = eval("3 * 4 + 5")
print(result1) # 输出:17(3*4+5=17)
# 2. 转换字符串为数字
num_str = input("请输入一个数字(可以是小数):")
num = eval(num_str) # 不管输入整数还是小数,都能正确转换
print(f"你输入的数字是:{num},类型是:{type(num)}")
# 比如输入12.3,输出:你输入的数字是:12.3,类型是:<class 'float'>
# 3. 动态执行代码(简单场景)
code = "print('我是eval执行的代码')"
eval(code) # 输出:我是eval执行的代码
⚠️ 注意:eval()有安全风险!如果执行未知来源的字符串(比如用户输入的恶意代码),可能会泄露数据,所以不要用它执行不可信的内容。
九、print () 函数:输出内容到屏幕
print()是 Python 最基础的输出函数,用来把内容显示在屏幕上。它的用法比你想的更灵活,不仅能打印字符串,还能格式化输出、控制分隔符和结束符。
4 个实用用法:
- 打印单个 / 多个内容(多个内容用逗号分隔)
- 格式化输出(用 f-string 最方便,Python 3.6 + 支持)
- 控制分隔符(默认是空格,用sep参数修改)
- 控制结束符(默认是换行,用end参数修改)
# 1. 打印单个/多个内容
print("Hello Python") # 打印单个字符串
print(10, 20, 30) # 打印多个内容,默认用空格分隔,输出:10 20 30
# 2. 格式化输出(f-string:在字符串前加f,变量用{ }包裹)
name = "王五"
age = 30
print(f"姓名:{name},年龄:{age},明年{age+1}岁") # 输出:姓名:王五,年龄:30,明年31岁
# 3. 控制分隔符(用sep参数)
print(1, 2, 3, sep="-") # 用“-”分隔,输出:1-2-3
print("a", "b", "c", sep="") # 无分隔符,输出:abc
# 4. 控制结束符(默认是\n换行,用end修改)
print("第一行", end=";") # 结束符改成“;”,不换行
print("第二行") # 输出:第一行;第二行
十、循环语句:让程序 “重复做事”
当需要重复执行一段代码时(比如打印 10 次 “Hello”、计算 1 到 100 的和),就用循环语句。Python 里主要有for循环和while循环两种。
1. for 循环:遍历序列(常用!)
for循环适合 “已知循环次数” 的场景,比如遍历列表、字符串、range () 生成的数字序列。
语法:for 变量 in 序列: 循环体
# 示例1:遍历字符串(逐个打印字符)
s = "Python"
for char in s:
print(char) # 依次输出:P、y、t、h、o、n
# 示例2:用range()生成数字序列(range(开始, 结束, 步长),左闭右开)
# 打印1到5(range(1,6)生成1、2、3、4、5)
for i in range(1, 6):
print(i)
# 示例3:计算1到100的和
sum_result = 0
for i in range(1, 101): # 1到100的数字
sum_result += i # 每次把i加进sum_result
print(f"1到100的和是:{sum_result}") # 输出:5050
2. while 循环:条件循环
while循环适合 “未知循环次数,只知道循环条件” 的场景 —— 只要条件成立,就一直循环,直到条件不成立才退出。
语法:while 条件: 循环体
# 示例:让用户输入数字,直到输入“0”为止
num = -1 # 初始值设为-1,让循环条件先成立
while num != 0:
num = int(input("请输入一个数字(输入0退出):"))
print(f"你输入的数字是:{num}")
# 运行效果:用户输入1→打印1,输入2→打印2,输入0→打印0,然后循环结束
3. 循环控制:break 和 continue
- break:立即跳出当前循环(不管循环条件是否成立)
- continue:跳过当前循环的剩余代码,直接开始下一次循环
# 示例1:用break跳出循环(找到10以内的第一个偶数就退出)
for i in range(1, 11):
if i % 2 == 0:
print(f"找到的第一个偶数是:{i}")
break # 跳出循环,后面的数字不再判断
# 输出:找到的第一个偶数是:2
# 示例2:用continue跳过奇数(只打印偶数)
for i in range(1, 11):
if i % 2 != 0:
continue # 跳过奇数,不执行下面的print
print(f"偶数:{i}")
# 输出:偶数:2、偶数:4、...、偶数:10
十一、函数:代码的 “复用模块”
函数是一段 “封装好的代码块”,用来实现特定功能 —— 比如计算求和、判断素数。定义一次函数后,可以反复调用,避免重复写代码,提高效率。
函数的 3 个核心部分:
- 定义函数:用def关键字,指定函数名、参数、返回值
- 调用函数:用 “函数名 (参数)” 的方式执行函数
- 参数与返回值:参数是函数的 “输入”,返回值是函数的 “输出”
实用示例:
# 示例1:定义一个“计算两数之和”的函数
def calculate_sum(a, b): # a、b是参数(输入)
result = a + b
return result # 返回值(输出)
# 调用函数:传入参数,获取返回值
sum1 = calculate_sum(10, 20) # 传入10和20,sum1=30
sum2 = calculate_sum(5.5, 3.5) # 也支持小数,sum2=9.0
print(f"10+20={sum1},5.5+3.5={sum2}")
# 示例2:带默认参数的函数(参数没传时用默认值)
def greet(name="朋友"): # name的默认值是“朋友”
print(f"你好,{name}!")
greet("张三") # 传参数,输出:你好,张三!
greet() # 不传参数,用默认值,输出:你好,朋友!
# 示例3:无返回值的函数(比如只打印内容)
def print_info(age):
print(f"年龄:{age}") # 没有return,返回值是None
result = print_info(25)
print(result) # 输出:None
总结:语法元素是编程的 “基石”
今天讲的 11 个语法元素 —— 格式框架、注释、命名、字符串、赋值、input ()、分支、eval ()、print ()、循环、函数 —— 是 Python 编程的基础中的基础。
其实这些语法并不难,关键是多练:比如用循环打印九九乘法表,用函数计算阶乘,用分支判断闰年…… 练得多了,自然就熟练了。
如果大家在练习中遇到问题,或者想深入了解某个语法的高级用法,欢迎在评论区交流~
185

被折叠的 条评论
为什么被折叠?



