带你从入门到精通——Python(二. 判断语句和循环语句)

建议先阅读我之前的博客,掌握一定的Python前置知识后再阅读本文,链接如下:

带你从入门到精通——Python(一. 基础知识)-CSDN博客

目录

二. 判断语句和循环语句

2.1 判断语句

2.1.1 比较运算符

2.1.2 逻辑运算符

2.1.3 Random模块        

2.1.4 If语句

2.1.4.1 基础if语句

2.1.4.2 If else语句

2.1.4.3 If elif else语句

2.1.4.4 嵌套if语句

2.2 循环语句

2.2.1 While循环

2.2.2 For循环

2.3 循环控制语句

2.4 综合示例

2.4.1 猜数字游戏

2.4.1 打印九九乘法表


二. 判断语句和循环语句

2.1 判断语句

2.1.1 比较运算符

        常见的比较运算符如下:

        通过比较运算符进行内容比较得到的数据,即为布尔值,此外,还可以自行定义来获取布尔值,布尔类型的字面量有:True  表示真(是、肯定),False 表示假(否、否定),可以使用如下的格式定义布尔类型的变量:变量名称 = 布尔类型字面量

2.1.2 逻辑运算符

        常用的逻辑运算符有三种:and表示并且,or表示或者,not表示取反,具体示例如下:

print(False and True)
# 输出False
print(False and False)
# 输出False
print(True and True)
# 输出True
print(False or True)
# 输出True
print(True or True)
# 输出True
print(False or False)
# 输出False
print(not False)
# 输出True
print(not True)
# 输出False

        可以看到,使用逻辑运算符可以对布尔值进行比较,同时得到的结果也是布尔值。

2.1.3 Random模块        

        如果我们需要获取一个随机数,可以导入random模块,并使用其中的randint函数来获取一个随机数,在Python中,函数是指提前组织好的,可以重复使用的,具有特定功能的代码块,更多关于函数的知识会在后续博文中详细介绍。

        生成随机数固定步骤如下:

# 导包
import random

# 随机生成一个整数,randint(a, b),取值范围:左闭右闭[a,b]
num = random.randint(1, 2)

        注意,我们可以通过按ctrl+鼠标左键点击对应模块名或者函数名等,如何查看相应的源代码。

2.1.4 If语句

2.1.4.1 基础if语句

        基础if语句的基本格式如下:

if 条件判断:
    条件满足的时候,执行的代码

        具体示例如下:

# 需求: 如果你的年龄大于等于18,显示您已经成年
# 1.获取年龄
age = int(input('请您输入年龄:'))
# 2.判断年龄
if age >= 18:
    # 3.给出提示
    print('您已经成年')

        注意: python中用缩进代表层级关系,1个缩进就是4个空格

2.1.4.2 If else语句

        If else语句格式的基本格式如下:

if 条件判断:
    条件满足的时候,执行的代码
else:
    条件不满足的时候,执行的代码

示例如下:

# 需求: 如果你的年龄大于等于18,显示您已经成年,否则显示您未成年
# 1.获取年龄
age = int(input('请您输入年龄:'))
# 2.判断年龄
if age >= 18:
    # 3.1 满足条件,给出提示
    print('您已经成年')
else:
    # 3.2 不满足条件,给出提示
    print('您未成年')
2.1.4.3 If elif else语句

        If elif else语句格式的基本格式如下:

if 条件判断1:
    条件1满足的时候,执行的代码
elif 条件判断2:
	 条件2满足的时候,执行的代码
...
elif 条件判断n:
	 条件n满足的时候,执行的代码
else:
    上述所有条件都不满足的时候,执行的代码

        具体示例如下:

"""
需求: 请编写一个程序,功能是当用户输入成绩后,根据成绩判断对应等级
成绩范围:0-100,等级:90-100:优,80-89:良,60-79:中,0-59:差
示例如下:
    请输入成绩: 99
    您输入的成绩为:99,等级为: 优
"""
# 1.获取成绩
score = int(input('请输入成绩:'))
# 2.判断成绩 ,并给出提示
if 90 <= score <= 100:
    print(f'您输入的成绩为:{score},等级为: 优')
elif 80 <= score < 90:
    print(f'您输入的成绩为:{score},等级为: 良')
elif 60 <= score < 80:
    print(f'您输入的成绩为:{score},等级为: 中')
elif 0 <= score < 60:
    print(f'您输入的成绩为:{score},等级为: 差')
else:
    print('您输入的成绩无效!')

2.1.4.4 嵌套if语句

        对于if语句来说,我们可以在一个if判断中,嵌套其他的if语句,其基本格式如下:

if 条件1:
	满足条件1执行的代码
	if 条件2:
		满足条件2执行的代码
		...
	else:
		不满足条件2执行的代码
		...
else:
	不满足条件1执行的代码

        具体示例如下:

"""
需求: 请编写一个程序,功能是当用户输入成绩后,根据成绩判断对应等级
成绩范围:0-100,等级:90-100:优,80-89:良,60-79:中,0-59:差
示例如下:
    请输入成绩: 99
    您输入的成绩为:99,等级为: 优
"""
# 1.获取成绩
score = int(input('请输入成绩:'))
# 2.判断成绩 ,并给出提示
if score < 0 or score > 100:
    print('您输入的成绩无效!')
else:
    if score >= 90:
        print(f'您输入的成绩为:{score},等级为: 优')
    elif score >= 80:
        print(f'您输入的成绩为:{score},等级为: 良')
    elif score >= 60:
        print(f'您输入的成绩为:{score},等级为: 中')
    else:
        print(f'您输入的成绩为:{score},等级为: 差')

2.2 循环语句

2.2.1 While循环

        While循环的基本格式有三种,首先基本格式如下:

while 条件:
    循环体

        完整格式如下:

定义变量并赋初始值
while 条件判断:
	循环体
	条件控制

        嵌套格式如下:

while 条件1:
	满足条件1,循环的内容
	while 条件2:
		满足条件2,循环的内容

        具体示例如下:

# 需求: 在控制台打印出1-100
# 分析: 利用while循环的变量作为输出内容
# 定义变量并赋初始值
i = 1
# while 条件判断
while i <= 100:
    # 循环体
    print(i)
    # 条件控制
    i += 1

2.2.2 For循环

        For循环的基本格式如下:

for 临时变量 in 待处理的数据集:
	循环体

        注意:for循环中的临时变量的作用范围(作用域)只限定在for循环内部,如果在for循环外部访问临时变量,虽然实际上是可以访问到的,在编程规范上,是不允许、不建议这么做的。

        配合range函数格式如下:

for 临时变量 in range(x,y,z):
	循环体

# range函数用于生成一段前闭后开的数字序列,其中:
# x表示起始值,如果省略,默认为0,可以与参数z同时省略,但不能单独省略参数x
# y作为一个结束标记,实际结束值是y-1,y的值是取不到的
# z表示步长,可以单独省略,也可以与省略参数x一同省略,如果省略默认为1

        嵌套格式如下:

for 临时变量1 in 待处理的数据集:
	for 临时变量2 in 待处理的数据集:
		循环体

        具体示例如下:

# 需求2: 已知字符串'ganxie dianzan shoucang he guanzhu',要求统计'a'出现了几次?
# 1.循环外定义变量赋值0
count = 0
for i in 'ganxie dianzan shoucang he guanzhu':
    if i == 'a':
        # 2.循环内,满足条件,就累加1
        count += 1
# 3.循环外使用最终count结果
print(count)
# 输出5

2.3 循环控制语句

        常用的循环控制语句主要有以下两个:

        Break表示跳出或者结束当前循环

        Continue表示跳过本次循环,继续下一次循环

        注意:break和continue作为循环控制语句用于操作循环,但在嵌套循环中,只能作用到当前所在的循环上,无法对上层循环起作用。

        具体示例如下:

"""
需求: 夜深人静的时候,一个人独立去做有20层的电梯(假设每层都循环播报),
此时坐到第5层,就下电梯,结束当前这个循环
"""
# for循环循环1-20播报
for i in range(1, 21):
    # 播报
    print(f'{i}层到了~')
    # 判断
    if i == 5:
        break

"""
需求: 夜深人静的时候,一个人独立去做有20层的电梯(假设每层都循环播报),
此时最不愿听到4层到了~,14层到了~,18层到了~
"""
# for循环循环1-20播报
for i in range(1, 21):
    if i == 4 or i == 14 or i == 18:
        continue
    # 播报
    print(f'{i}层到了~')

2.4 综合示例

2.4.1 猜数字游戏

        现在需要我们随机产生一个1-100之间的数字,并要求用户来猜,最多有三次猜测的机会,示例代码如下:

# 1.获取一个随机数(范围1-100)
import random

num1 = random.randint(1, 100)
# 4.循环3次
i = 1
while i <= 3:
    # 循环体
    # 2.获取用户猜的数
    num2 = int(input('请您输入您猜的数(范围1-100):'))
    # 3.拿着用户猜的数和随机数判断,并给出提示
    if num2 < 1 or num2 > 100:
        print('您猜的数无效,请仔细查看提示!')
    else:
        if num2 == num1:
            print('猜对了')
            # 跳出循环
            break
        elif num2 > num1:
            print('猜大了')
        else:
            print('猜小了')
    # 条件控制
    i += 1

2.4.1 打印九九乘法表

        在九九乘法表之前先补充一个制表符的知识:在字符串中,可以使用\t符号作为一个制表符,\作为转义字符的标志,其效果等同于在键盘上按下tab键。如果\t前面没有字符,会空四个位置,相当于一个Tab即4个空格;如果\t前面的字符数<4,则会补全一个Tab,不足的字符数用空格补充,下一个字符会从第5个位置开始;如果\t前面的字符数>=4且<8,则会补全两个Tab,不足的字符数用空格补充,下一个字符会从第9个位置开始,依次类推,它可以让我们对多行字符串进行对齐操作。

        具体示例和输出如下:

print("a\tab\tabc\na\tab\tabc")

        学习完制表符的知识后,我们就可以使用for循环来打印九九乘法表了,示例代码和结果如下:

# 1.外层循环控制行
for i in range(1, 10):
    # 2.内层循环控制列
    for j in range(1, i + 1):
        print(f'{j}*{i}={j * i}', end='\t')
    # print()默认表示打印一个换行符\n,表示每行循环结束后,进行换行操作
    print()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值