嵌入式Python基础1-2 条件语句 if elif else 随机数random eval while循环 for循环 水仙花数 循环else list 列表常用方法 增删改查 加排序 append remove pop index() 升序sort()降序 sort(reverse=True) 反转 reverse() 元组 组包 解包(解构) 元组交换数据 函数 函数定义 函数调用 递归 局部变量 全局变量 global
一、条件控制语句
程序满足特定的条件才能执行特定的代码,条件控制语句使用if关键字,if语句的结构如下:

1. if 语句
if语句格式:
if 条件:
条件成立时,要做的事情
……
判断年龄
需求:
- 定义一个整数变量记录年龄
- 判断是否满 18 岁 (>=)
- 如果满 18 岁,允许进网吧嗨皮
代码如下:
age = int(input('请输入你的年纪:'))
# if判断
if age >= 18:
print('允许进网吧嗨皮')
2. if...else...语句
有些情况我们希望满足条件执行相应的代码,不满足条件执行其他的代码,这就需要用到if else语句
if ... else...语句格式
if 要判断的条件:
条件成立时,要做的事情
……
else:
条件不成立时,要做的事情
……
判断年龄
需求:
- 输入用户年龄
- 判断是否满 18 岁 (>=)
- 如果满 18 岁,允许进网吧嗨皮
- 否则(未满 18 岁),提示回家写作业
代码如下:
age = int(input('请输入你的年纪:'))
# if判断
if age > =18:
print('允许进网吧嗨皮')
else:
print('回家写作业')
3. if ...elif... else语句
一对 if 和 else 可以让代码执行出 两种不同的结果
但开发中,可能希望 并列的执行出多种结果,这时就可以使用 elif
if ...elif... else格式
if 条件1:
条件1满足执行的代码
……
elif 条件2:
条件2满足时,执行的代码
……
elif 条件3:
条件3满足时,执行的代码
……
else:
以上条件都不满足时,执行的代码
……
节日活动判定
需求:
- 定义
holiday_name字符串变量记录节日名称 - 如果是 情人节,应该 买玫瑰/看电影
- 如果是 平安夜,应该 买苹果/吃大餐
- 如果是 生日,应该 买蛋糕
- 其他的日子,每天都是节日……
代码:
holiday_name = input('请输入节日名称')
if holiday_name == '情人节':
print('买玫瑰/看电影')
elif holiday_name == '平安夜':
print('买苹果/吃大餐')
elif holiday_name == '生日':
print('买蛋糕')
else:
print('每天都是节日,每天一个红包')
4. 火车站安检-if嵌套
在开发中,使用 if 进行条件判断,如果希望 在条件成立的执行语句中 再 增加条件判断,就可以使用 if 的嵌套
if 的嵌套 的应用场景是:在之前条件满足的前提下,再增加额外的判断
if 的嵌套 的语法格式,除了缩进之外 和之前的没有区别
需求:
- 定义布尔型变量
has_ticket表示是否有车票- 定义整型变量
knife_length表示刀的长度,单位:厘米- 首先检查是否有车票,如果有,才允许进行 安检
- 安检时,需要检查刀的长度,
- 判断是否超过 20 厘米
- 如果超过 20 厘米,提示刀的长度,不允许上车
- 如果不超过 20 厘米,安检通过
- 如果没有车票,不允许进门
# 1. 定义布尔型变量 has_ticket 表示是否有车票
has_ticket = eval(input("请输入是否有车票:"))
# 2. 定义整型变量 knife_length 表示刀的长度,单位:厘米
knife_length = int(input("请输入刀的长度:"))
if has_ticket:
if knife_length > 20:
print("不能进站,刀太长了")
else:
print("可以进站")
else:
print("不能进站,没有车票")
5. 练习-石头剪刀布
需求:
- 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
- 电脑 随机 出拳 —— 先假定电脑只会出石头,完成整体代码功能
- 比较胜负并输出结果
分析:
可以先将问题简化,假设电脑出一个固定的比如石头
完善程序后再添加电脑随机出拳功能
1. 基础代码实现(电脑固定出石头)
2. 随机数实现(电脑出的石头随机实现即可)
电脑固定出石头1:
# 1.我们出拳 定义变量保存用户输入
my = int(input('请输入出拳:'))
# 2.电脑随机出拳 (假定电脑出石头)
com = 1
# 3.判断胜负
if (my==3 and com==1):
# 用户胜利
print('用户胜利,my=%d,com=%d'%(my,com))
elif my==com:
print('平局,决战到天亮')
else:
print('电脑胜利,my=%d,com=%d'%(my,com))
电脑随机出1、2、3:
# python生成随机数 random
import random
# 1.我们出拳 定义变量保存用户输入
my = int(input('请输入出拳:'))
# 2.电脑随机出拳 (假定电脑出石头)
# 指定开始 结束 包含开始包含结束
com = random.randint(1,3)
# 3.判断胜负
if (my==1 and com==2) or (my==2 and com ==3) or (my==3 and com==1):
# 用户胜利
print('用户胜利,my=%d,com=%d'%(my,com))
elif my==com:
print('平局,决战到天亮,my=%d,com=%d'%(my,com))
else:
print('电脑胜利,my=%d,com=%d'%(my,com))
随机数
获取一个范围在[1,3]的随机数:
import random
computer = random.randint(1, 3)
扩展知识:eval
eval()函数的作用是将一个字符串当作Python代码进行解析和执行。它接受一个字符串作为参数,并将该字符串解析为一个表达式,并返回表达式的计算结果。
result = eval('2 + 3 * 4') # 14
x = 5
eval('x = x + 1')
print(x) # 6
需要注意的是,由于eval()函数的功能是执行字符串中的代码,它可能会带来一些安全风险。如果接受用户输入作为eval()函数的参数,请确保对输入进行验证和过滤,以防止恶意代码执行或潜在的安全漏洞。在使用eval()函数时要谨慎,并确保只执行可信任的代码。
二、while循环
1. 程序的三种执行流程
程序的执行流程有三种,分别是:顺序执行、分支执行、循环执行
- 顺序 —— 从上向下,顺序执行代码
- 分支 —— 根据条件判断,决定执行代码的分支
- 循环 —— 让 特定代码 重复 执行
2. while循环
循环的作用是让指定的代码重复的执行while 循环最常用的应用场景就是 让执行的代码 按照 指定的次数 重复 执行
2.1. 基本语法

应用场景:
需求:
跟媳妇承认错误,说一万遍"媳妇儿,我错了"
print("媳妇儿,我错了


最低0.47元/天 解锁文章
1446

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



