三大流程控制语句

1.认识三大流程控制

2.顺序流程控制

编写一个程序,提示用户按圆的半径计算圆的周长和面积。

输入圆的半径: 5.3 

半径为5.3cm的圆的周长为33.3,面积为 88.2 。

1)
import math

# 输入部分
r = float(input("请输入圆的半径:"))
# 处理部分
C = 2 * math.pi * r
S = math.pi * r ** 2

# 输出部分
print("半径为%fcm的圆的周长为%.2f, 面积为%.2f" % (r, C, S))

3.分支流程控制

1. 单分支语句
if 条件:
   满足条件执行的内容

2. if - else 语句
if expression:
     if_suite
else:
     else_suite

3. 三元运算符
三元运算符是软件编程中的一个固定格式,使用这个算法可以使调用数据时逐级筛选。
语法:条件表达式?表达式1:表达式2。
含义: 如果条件表达式成立或者满足则执行表达式1,否则执行第二个。
三元运算符的if语句
if_suite if expression1 else else_suite

4. if - elif - else 语句
if expression1:
     if_suite
elif expression2:
     elif_suite
else:
     else_suite

小练习

编写一个程序,提示学生输入个人平均成绩, 输出学生成绩的等级。
需求: 分数score
    1). 90=<score<=100, grade=A
    2). 80=<score<90, grade=B
    3). score<80, grade=C

编写一个用户登录程序。
代码需求:
    1. 用户输入用户名和密码
    2. 判断用户名和密码是否正确(用户名=admin, 密码=westos)
    3. 如果正确: "用户admin登录成功"
    3. 如果不正确: "用户admin登录失败"

注意点:
python中input接收的是字符串, 如果接收整型数, 需要通过int转成整型数。
冒号和缩进是python的语法规范。
1.)成绩.py
"""
补充pycharm快速复制一行的快捷键: ctrl + d
"""

score = int(input('请输入学生成绩:'))
if 90<=score<=100:
    print("学生成绩的等级是A")
elif 80<=score<90:   # elif 满足第二个条件做什么操作
    print("学生成绩的等级是B")
elif 0<=score<80:
    print("学生成绩的等级是C")
else:
    print("输入错误")

2.)用户登陆.py
name = input("请输入用户名:")
password = input("请输入密码:")
if name == "admin" and password == "westos":
    print("用户%s登陆成功" %name)
else:
    print("用户%s登陆失败" %name)

4.循环流程控制

1. while循环语句
while expression:
      suite_to_repeat
while循环原理: while 循环的 suite_to_repeat 子句会一直循环执行, 直到 expression 值为布尔假.
示例:
# 需求: 输出数字从0-100
count = 0
while count <= 100:
    print(count) 
    count += 1
示例:
"""
用户登录成功进入系统, 登录失败,继续登录。 并且统计登录次数。
"""
try_count = 1                    # 用户尝试登录的次数
while True:
    print(f'用户第{try_count}次登录系统')
    try_count += 1               # 用户尝试登录的次数+1
    name = input("用户名:")
    password = input("密码:")
    if name == 'admin' and password == 'westos':
        print(f'用户{name}登录成功')
        exit()                   # 退出程序
    else:
        print(f'用户{name}登录失败')
2.for循环语句
for循环输出数字
# 需求: 输出数字从0-100
"""
range(0, 101) 生成0-100的数值
for num in range(0, 101)
- num=0
- num=1
....
- num=100
"""
# range(start, end)指的是从start开始倒end-1结束
# range(num)指的是从0开始倒num-1结束
# range(start, end, step), 指的是从start开始倒end-1结束, 步长为step
for num in range(0, 101):
    print(num)

for循环访问字符串
string = 'westos'
# item='w', 'e', 's', 't'...
for item in string:
    print("---", item)

5.跳出循环语句break语句和continue语句

1.break语句
break语句用来终止循环语句,即循环条件没False条件或者序列还没被完全递归完,也会停止执行循环语句。
count = 0
while count <= 10:
    count += 1         # 1
    print(count)
    if count == 5:
      # 遇到break, 循环结束
      break

2.continue语句
continue 跳过当前循环的剩余语句,然后继续进行下一轮循环。



count = 0
while count <= 10:
    count += 1 # 1
    print(count)
    if count == 5:
        # 遇到continue跳出本次循环(本次循环continue后的程序不执行,执行下一次循环)
        continue

案例:九九乘法表

# 如何让print不换行呢? print('xxx', end=' ')
for i in range(1,10):
    for j in range(1,i+1):
        print(f"{i}*{j}={i*j}", end=" ")
    # i=1, i=2, i=3, 开始换行
    print()

案例:防黑客暴力破解的用户登录系统

需求: 
根据输入用户名和密码,判断用户名和密码是否正确。 为了防止暴力破解, 登陆仅有三次机会, 如果超过三次机会, 报错提示。
数据库信息: 
	name='root'	passwd='westos'

示例:
try_count = 0  # 用户尝试登录的次数
while try_count<=3:
    print(f'用户第{try_count}次登录系统')
    try_count += 1
    name = input("用户名:")
    password = input("密码:")
    if name == 'root' and password == 'westos':
        print(f'用户{name}登录成功')
        exit()   # 退出程序
    else:
        print(f'用户{name}登录失败')
else:
    print("尝试登陆的次数大于3次“)

补充:python中while语句和for语句与else直接结合
while 条件表达式:
    满足条件执行的内容
else:
    不满足条件执行的内容

for i in range(2):
    循环时执行的语句
else:
    没有for可以遍历的值时,执行的语句
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值