【零基础学Python】04-Python运算符、分支、循环与随机数实战教程
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🎯 你正在阅读「Python 从零摸索日记」系列文章 🎯
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨🔥 弹简特 个人主页
❄️ 个人专栏直通车:
✨ 靠热爱去书写自己,靠勇敢去书写生活!
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
🌟 博主简介:
文章目录:
一、前言
本篇是 Python 从零摸索日记系列内容,面向编程新手。文章细致讲解各类运算符、if 分支语句、while 与 for 循环,以及 random 模块用法,搭配丰富代码案例与实操演示,循序渐进带你掌握 Python 基础核心语法。
二、算术运算符、比较运算符和逻辑运算符
1. 算术运算符
算数运算符有:加减乘除,取余取整,乘方(幂运算)
具体看如下的代码即可:
print(12 + 6) # 18
print(12 - 6) # 6
print(12 * 6) # 72
# 取整
print(13 // 6) # 2......1 取整=2
# 取余
print(13 % 6) # 2......1 取余=1
# 乘方:2*2*2 2的3次方
print(2 ** 3) # 2*2*2 = 8
2. 比较运算符
比较运算符有:大于、小于、等于、不等于、大于等于、小于等于
那么注意:我们比较运算符得到的结果都是布尔类型哦~
具体请看代码:
print(3 > 5) # False
print(3 < 5) # True
print(3 >= 5) # False
print(3 <= 5) # True
print(3 != 5) # True
print(3 == 5) # False
print(3 == 3) # True
3. 逻辑运算符
逻辑运算符有:and or not
也就是我们的与、或、非
- and 所有条件都为真,结果才为真,一假则假
- or 所有的条件都为假,结果才为假,一真则真
- not 真的变为假,假的变为真
代码:
# 逻辑运算符有:and or not
print((1 == 1) and (3 <= 2)) # False
print((1 == 1) and (3 <= 5)) # True
print((1 == 1) or (3 <= 5)) # True
print((1 != 1) or (3 <= 2)) # False
print(not 1 != 1) # True
print(not 1 == 1) # False



三、分支语句
1. 介绍
我们几乎所有的编程语言的代码执行过程都有三大体系:
- 顺序执行
- 分支执行
- 循环执行
我们之前所说的那些都是顺序执行,本期就介绍分支执行和循环执行。
2. 分支语句的关键字和语法
分支语句我们使用的关键字是if
2.1 语法
- if 判断条件:
- 条件成立会执行的代码块
- else:
- 条件不成立会执行的代码块
2.2 pass关键字
语法:
age = eval(input('请输入你的年龄'))
if age > 18:
# 在这里你不知道写什么就会报错 此时使用pass来消除错误
pass
else:
# 在这里你不知知道写什么就会报错
pass


3. if分支和else的基本使用
示例::输入考试成绩,那么如果成绩>=60就算及格,否则不及格
# if和else的基本使用:
# 需求: 输入成绩 >= 60 几个,否则不及格
print('开始查询考试成绩:')
score = int(input('请输入你的分数:'))
if score >= 60:
print('恭喜你,考试成绩合格了~')
print('请进入下一阶段的学习~~')
else:
print('很遗憾,考试不及格')
print('别灰心,我们一起继续努力~~')
print('成绩查询结束')
结果:

代码解释:


4. if多分支判断
我们使用elif关键字来进行匹配对应的输出条件代码块。
案例: 统计学生的成绩
编写一个Python程序,实现以下功能:
- 让用户输入一个考试分数(0-100之间的整数)
- 根据分数区间,输出对应的成绩等级和评语:
- 90分及以上:等级为「优秀」,评语:“太棒了!继续保持!”
- 80~89分:等级为「良好」,评语:“表现不错,还有进步空间!”
- 70~79分:等级为「中等」,评语:“基础还行,多刷难题冲一冲!”
- 60~69分:等级为「及格」,评语:“刚好及格,一定要查漏补缺!”
- 60分以下:等级为「不及格」,评语:“别灰心,认真复习下次一定能过!”
代码:
# 需求:用户输入考试分数,根据不同分数区间给出对应的等级评价
score = int(input('请输入你的考试分数:'))
if score >= 90:
print('成绩等级:优秀🎉')
print('太棒了!继续保持这个水平!')
elif score >= 80:
print('成绩等级:良好👍')
print('表现不错,还有进步空间哦~')
elif score >= 70:
print('成绩等级:中等😊')
print('基础还可以,多复习难题就能往上冲!')
elif score >= 60:
print('成绩等级:及格✅')
print('刚好及格,一定要查漏补缺!')
else:
print('成绩等级:不及格❌')
print('别灰心,认真复习下次一定能过!')


5. if嵌套的使用
如果出现这样的一个场景:在满足第一个的情况下,我还满足其他,此时就是用if语句的嵌套的,具体使用方法,我们通过下述例子来介绍:
示例:
编写一个 Python 程序,实现景区门票价格计算:
- 先判断用户是否为学生(输入
y或n) - 如果是学生:
- 身高≥1.4米:学生票半价(30元)
- 身高<1.4米:免票(0元)
- 如果不是学生:
- 身高≥1.4米:全价票(60元)
- 身高<1.4米:优惠票(20元)
代码:
# 需求:景区门票价格判断(if嵌套练习)
# 1. 先判断是否为学生
# 2. 学生:身高≥1.4米 → 半价;<1.4米 → 免票
# 3. 非学生:身高≥1.4米 → 全价;<1.4米 → 优惠票
student = input('请问你是学生吗?(y/n): ')
height = float(input('请输入你的身高(米): '))
if student == 'y':
print('你是学生,可享受学生优惠政策')
if height >= 1.4:
print('身高≥1.4米,购买学生半价票')
print(f'最终票价:30元')
else:
print('身高<1.4米,免票入园')
print(f'最终票价:0元')
else:
print('你不是学生,按普通游客标准收费')
if height >= 1.4:
print('身高≥1.4米,购买全价票')
print(f'最终票价:60元')
else:
print('身高<1.4米,购买优惠票')
print(f'最终票价:20元')

四、随机数-random模块
1. 随机整数-randint
案例1: 获取一个随机整数
语法: randint(起始,终止)
注意:范围是左闭右闭的,比如
randint(1,3)那么就会在[1,3]即1到3之间随机出一个数,包括1和3
示例:
# 随机获取一个整数
from random import randint
# 我们在[1,10]之间随机出来数字
print(f'第1次随机出来的值:{randint(1, 10)}')
print(f'第2次随机出来的值:{randint(1, 10)}')
print(f'第3次随机出来的值:{randint(1, 10)}')
print(f'第4次随机出来的值:{randint(1, 10)}')
print(f'第5次随机出来的值:{randint(1, 10)}')

2. 从容器中随机提取choice
案例2: 从列表中随机提取一个元素值
语法: choice(列表)
示例:
# 从列表中随机获取一个元素
from random import choice
name_list = ['弹简特', '李四', '张三', '赵六', '刘备']
print(f'从列表中随机出一个元素:{choice(name_list)}')
print(f'从列表中随机出一个元素:{choice(name_list)}')
print(f'从列表中随机出一个元素:{choice(name_list)}')

根据您的要求,我已重新整理文章。主要调整包括:
- while循环:明确写出初始表达式、循环条件、更新表达式,且示例中不包含
break/continue。 - for循环:针对Java转Python的学习者,详细解释其与Java for循环的区别,强调Python的for是“遍历驱动”而非“索引驱动”,并说明
range()的用法。示例中不包含break/continue。 - break与continue:分别用 while 和 for 各举至少一个例子,共4个示例,清晰展示两者的不同作用。
以下是整理后的文章:
五、循环语句
1. while循环:条件驱动的重复执行
1.1 核心作用
while 循环通过条件判断控制代码块的重复执行——只要条件为 True,循环体就会持续运行,直到条件变为 False。它适合循环次数不确定的场景,需要手动管理三个关键要素:
- 初始表达式:循环开始前定义的变量(如计数器)
- 循环条件:每次迭代前判断的布尔表达式
- 更新表达式:循环体内修改变量,使条件最终趋向
False
1.2 使用场景
- 次数不确定的重复任务(如用户输入验证、游戏循环)
- 需要持续执行直到满足特定条件的场景(如监控数据、轮询状态)
- 配合计数变量实现固定次数循环(与
for功能互补)
1.3 案例:累加求和直到超过阈值
需求:从1开始累加正整数,直到总和首次超过100,输出此时的总和以及累加到的最后一个数。
# ---------- while 循环的三要素 ----------
# 1. 初始表达式
total = 0
num = 1
# 2. 循环条件:当总和 ≤ 100 时继续累加
while total <= 100:
total += num # 累加
# 3. 更新表达式:num 自增,使条件逐渐接近 False
num += 1
print(f"总和首次超过100时的值为:{total}")
print(f"此时累加到了数字:{num - 1}") # 因为最后一次累加后 num 又多加了1
运行结果:

1.4 关键注意点
- 必须包含更新表达式(如
num += 1),否则循环条件永远为真 → 死循环 - 条件判断要合理,确保存在使条件变为
False的可能 - 固定次数的循环优先使用
for(更简洁安全),while更适合“直到某个条件达成”的场景
2. for循环:遍历驱动的高效迭代
2.1 Python的for与Java的for有什么不同?
如果你熟悉Java,Python的 for 循环不是Java中的 for (初始化; 条件; 更新) 形式。Python的 for 本质上是一个 “迭代器循环”,它直接遍历容器中的每一个元素,类似Java的 增强for循环(for-each):
// Java 增强for循环
int[] numbers = {1,2,3,4,5};
for (int n : numbers) {
System.out.println(n);
}
# Python for循环
numbers = [1,2,3,4,5]
for num in numbers:
print(num, end=' ')

上述两者完全等价!Python的 for 无需手动管理索引、条件判断和更新,它会自动按顺序取出可迭代对象(列表、字符串、range序列等)中的每一个元素。
2.2 如何实现“固定次数循环”?—— range() 函数
在Java中,固定次数循环常用 for (int i=0; i<10; i++)。Python中则使用 range() 生成一个数字序列:
# 写法一:range(stop) —— 从0开始到stop-1
for i in range(10): # i = 0 1 2 3 4 5 6 7 8 9
print(i)
# 写法二:range(start, stop) —— 从start到stop-1
for i in range(1, 11): # i = 1 2 3 4 5 6 7 8 9 10
print(i)
# 写法三:range(start, stop, step) —— 指定步长
for i in range(0, 20, 2): # i = 0 2 4 6 8 10 12 14 16 18
print(i)



记忆技巧:
range(n)会产生n个数,最后一个数是n-1,这和Java的for (int i=0; i<n; i++)完全一致。
2.3 核心作用与使用场景
- 核心作用:遍历可迭代对象(列表、字符串、元组、字典、range序列等),自动控制循环次数,代码更简洁安全。
- 典型场景:
- 固定次数的重复任务(配合
range()) - 批量处理数据(计算、筛选、修改列表元素)
- 遍历字符串、字典等复合数据类型
- 固定次数的重复任务(配合
2.4 案例:成绩批量统计
需求:输入10个学生的成绩,分别统计及格(≥60)和不及格的人数,并计算平均分。
scores = []
pass_count = 0
fail_count = 0
total_score = 0
# 使用 for + range 实现固定次数循环
for i in range(10):
score = float(input(f"请输入第{i+1}个学生的成绩:"))
scores.append(score)
total_score += score
if score >= 60:
pass_count += 1
else:
fail_count += 1
# 计算平均分
average_score = total_score / len(scores)
print("\n===== 成绩统计结果 =====")
print(f"总人数:{len(scores)}人")
print(f"及格人数:{pass_count}人,不及格人数:{fail_count}人")
print(f"平均分:{average_score:.2f}分")
print(f"最高成绩:{max(scores)}分,最低成绩:{min(scores)}分")
2.5 拓展用法:遍历容器
# 1. 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print(fruit)
# 2. 遍历字符串
word = "Hello"
for ch in word:
print(ch)
# 3. 遍历元组
numbers = (1, 2, 3)
for num in numbers:
print(num)
# 4. 遍历字典
person = {"name": "小明", "age": 18}
for key, value in person.items():
print(key, value)

3. break与continue:循环流程的控制开关
break 和 continue 可以在 while 和 for 循环中使用,用于改变循环的正常执行流程。下面分别用两种循环举例说明。
3.1 break:直接终止整个循环
- 作用:立即跳出当前所在的整个循环体,后续所有迭代都不再执行。
- 典型场景:找到目标数据后无需继续查找、用户主动退出、发生致命错误时终止。
示例1:while循环中使用 break —— 猜数字(找到即停止)
secret = 7
guess = 0
while True: # 条件永远为真,需要内部用 break 退出
guess = int(input("猜一个1-10之间的数字:"))
if guess == secret:
print("恭喜猜对了!")
break # 猜对后立即终止循环
else:
print("猜错了,再试一次")

示例2:for循环中使用 break —— 查找列表中是否存在目标元素
numbers = [12, 45, 78, 23, 56, 89, 34]
target = 56
found = False
for num in numbers:
if num == target:
print(f"找到目标数字:{target}")
found = True
break # 找到后直接终止循环,后面的元素不再检查
print(f"当前检查:{num}")
if not found:
print("未找到目标数字")
3.2 continue:跳过本次循环,进入下一次迭代
- 作用:跳过当前循环中
continue之后的所有代码,直接开始下一次循环迭代。 - 典型场景:过滤无效数据、跳过某些不需要处理的值。
示例1:while循环中使用 continue —— 只处理1到10之间的偶数
num = 1
while num <= 10:
if num % 2 != 0: # 奇数
num += 1
continue # 跳过本次循环,不执行下方的打印
print(f"{num} 是偶数")
num += 1

示例2:for循环中使用 continue —— 计算1-20之间所有偶数的和
sum_even = 0
for i in range(1, 21):
if i % 2 != 0:
continue # 奇数直接跳过,不累加
sum_even += i
print(f"1-20之间所有偶数的和:{sum_even}") # 输出:110
3.3 对比总结:break vs continue
| 关键字 | 作用 | 对循环的影响 | 典型场景 |
|---|---|---|---|
break |
终止整个循环 | 循环立即结束,不再执行任何剩余迭代 | 找到目标数据、用户退出、错误处理 |
continue |
跳过本次循环 | 仅跳过当前迭代的剩余代码,循环继续下一次 | 过滤无效数据、跳过特定条件的元素 |
六、写在最后
能坚持看到最后的朋友,属实是真爱学编程了,先歇会儿眼睛放松一下~
很多同学刚开始学Python,都不知道它到底能干啥。还是简单跟大伙唠唠:
可以做自动化测试、写办公脚本解放双手、爬虫采集数据、做数据分析、开发小工具、甚至做简单后端和小游戏,用途真的特别广。
最后分享几句实在又走心的话送给正在学Python的你:
1. 慢慢来别着急,代码不会辜负每一个愿意坚持敲键盘的人。
2. 现在多学一点技能,未来就多一份选择的底气。
3. 与其原地迷茫焦虑,不如从一行Python代码开始悄悄变强。
4. 看似不起眼的日复一日,终会在将来的某天,让你看到坚持的意义。
铁汁们~ 觉得内容有用的话,麻烦点个赞、关注一波,后续会持续更新Python入门、实战、自动化相关笔记,咱们一起慢慢进阶。
文章有哪里讲得不妥的,欢迎评论区随时指正,大家一起交流进步!
兄弟们,咱们一起学好Python,悄悄逆袭~~~
更多推荐





所有评论(0)