Python三大流程控制语句:顺序,分支,循环(while,for)

三大流程控制语句

    • 1.认识三大流程控制
    • 2.墨守循规的顺序流程控制
    • 3.有路任性的分支流程控制
    • 3.1分支流程语句
    • 3.2分支语句之三元运算符:简化代码
    • 3.3多分支语句
    • 4.吃了炫迈的循环流程控制
    • 4.1while循环
    • while死循环
    • 4.2for循环
    • range() 内建函数
    • 跳出循环语句break 语句和continue 语句
    • 循环语句练习
    • 九九乘法表
    • 防黑客暴力破解的用户登录系统
    • 拓展:Turtle

1.认识三大流程控制

  • 顺序
    • 分支
      • 循环

2.墨守循规的顺序流程控制

参考上篇博客中的温度转换器

3.有路任性的分支流程控制

3.1分支流程语句

Python三大流程控制语句:顺序,分支,循环(while,for)_第1张图片

3.2分支语句之三元运算符:简化代码

三元运算符是软件编程中的一个固定格式,使用这个算法可以使调用数据时逐级筛选。
语法条件表达式?表达式1:表达式2。
含义: 如果条件表达式成立或者满足则执行表达式1否则执行第二个
Python三大流程控制语句:顺序,分支,循环(while,for)_第2张图片

3.3多分支语句

Python三大流程控制语句:顺序,分支,循环(while,for)_第3张图片

4.吃了炫迈的循环流程控制

4.1while循环

原理: while 循环的 suite_to_repeat 子句会一直循环执行, 直到 expression 值为布尔假
Python三大流程控制语句:顺序,分支,循环(while,for)_第4张图片

while死循环

Python三大流程控制语句:顺序,分支,循环(while,for)_第5张图片输出0-100之间的偶数
Python三大流程控制语句:顺序,分支,循环(while,for)_第6张图片

4.2for循环

与传统语言(e.g.C/C++,Java )中的 for 语句不同, Python 的 for语句更加简洁.
for循环原理:
可以遍历序列成员, 可以用在 列表解析 和 生成器表达式中, 它会自动地调用迭代器的 next()
方法, 捕获 StopIteration 异常并结束循环(所有这一切都是在内部发生的).

range() 内建函数

range语法:
range(start, end, step =1)返回一个包含所有 k 的列表, start <= k < end , k每次递增 step

range(3) [0,1,2]
range(1, 4) [1,2,3]
range(0, 6, 2) [0,2,4]

输出0-100之间的偶数,奇数
Python三大流程控制语句:顺序,分支,循环(while,for)_第7张图片
for循环遍历字符串
Python三大流程控制语句:顺序,分支,循环(while,for)_第8张图片

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

break语句用来终止循环语句,即循环条件没False条件或者序列还没被完全递归完,也会停止执行循环语句。
Python三大流程控制语句:顺序,分支,循环(while,for)_第9张图片Python三大流程控制语句:顺序,分支,循环(while,for)_第10张图片

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

Python三大流程控制语句:顺序,分支,循环(while,for)_第11张图片
Python三大流程控制语句:顺序,分支,循环(while,for)_第12张图片

循环语句练习

九九乘法表

i=1 j=1   1*1
i=2 j= 1,2 1*2 2*2
i=3 j=1,2,,3     1*3 2*3 3*3
for i in range(1,10):
    for j in range(1,i+1):
        print(f"{j}*{i}={j*i}",end=' ')
    print()

Python三大流程控制语句:顺序,分支,循环(while,for)_第13张图片
问题:反向输出,如何让在前面加空格

for i in range(1,10):
    for j in range(1,i):
        print('\t',end='\t')
    for k in range(i,10):
        print('%d*%d=%d'%(k,i,i*k),end='\t')
    print()

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

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

Python三大流程控制语句:顺序,分支,循环(while,for)_第14张图片

拓展:Turtle

Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

命令 说明
turtle.pensize(width) 绘制图形时的宽度
turtle.pencolor() 画笔颜色
Tuttle.fillcolor(colorstring) 绘制图形的填充颜色
Turtle.color(color1,color2) 同时设置pencolor=color1,fillcolor=color2
Turtle.filling() 返回当前是否填充状态
Turtle.begin_fill() 准备开始填充图形
Turtle.end_fill() 填充完成
Turtle.hideturtle() 隐藏箭头显示
Tutle.showturtle() 与hideturtle() 函数对应
Turtle.forward(dista) 向当前画笔方向移动distance像素长
Turtle.backward(distance) 向当前画笔相反方向移动distance像素长度
Turtle.right(digree) 顺时针移动degree
Turtle.left(digree) 逆时针移动degree
Turtle.pendown() 移动时绘制图形,缺省时也为绘制
Tuttle.goto(x,y) 将画笔移动到坐标为x,y的位置
Turtle.penup() 移动时不绘制图形,提起笔,用于另起一个地方绘制时用
Turtle.speed(speed) 画笔绘制的速度范围[0,10]整数
Turtle.circle() 画圆,半径为正负,表示圆心在画笔的左边(右边)画圆
R:red, G:green, B:blue
RGB颜色表示法:
    red: (255,0,0)
    green: ()
    blue: ()
# 1. 生成渐变色的列表
# 从红色到黄色
colors1 = [(255, g, 0) for g in range(0, 256)]
# 从黄色到绿色
colors2 = [(r, 255, 0) for r in range(255, -1, -1)]
# 从绿色到青色
colors3 = [(0, 255, b) for b in range(0, 256)]
# 从青到蓝
colors4 = [(0, g, 255) for g in range(255, -1, -1)]
# 从蓝到紫
colors5 = [(r, 0, 255) for r in range(0, 256)]
# 从紫到红
colors6 = [(255, 0, g) for g in range(255, -1, -1)]
# colors = colors1 + colors2 + colors3 + colors4 + colors5 + colors6
colors = colors1 + colors2 + colors3 + colors4 + colors5 + colors6
n = len(colors)

# 2. 基于turtle生成彩虹糖(可根据自己的喜好调整彩虹棒棒糖的颜色)
# 画笔的大小: 20px
turtle.pensize(20)
# 画图的速度,0代表最快速度
turtle.speed(0)
# 设置turtle指定颜色的模式, 255代表rgb模式
turtle.colormode(255)
# 循环1000次不断画圆,画圆的同时不断调整圆的半径
for i in range(1000):
    # 如果颜色超出给定的范围,和总颜色个数取余,从头开始获取颜色。
    color = (255, 0, 0)
    turtle.color(color)
    turtle.circle(i // 3, 5)
# 彩虹色棒棒糖绘制完成
turtle.done()

你可能感兴趣的:(python,python,python,分支,python循环,tutle)