1. 循环while或 for后边都记得加:英文冒号1.1 while1.1.1 概述① 初始化计数器② 编写循环条件判断计数器是否达到了目标位置③ 在循环内部更新计数器1.1.2 猜数字案例#适用于 循环次数未知的情况, 例如: 猜数字游戏...# 导包 - 可以理解为: 请外援.importrandom# 1. 生成1个 1 ~ 100之间的随机数, 让用户来猜.guess_numrandom.randint(1,100)print(guess_num)# 因为不知道用户多少次能猜对, 用: while循环whileTrue:# 2. 提示用户录入他/她要猜的数字.input_numint(input(请输入你要猜的数字: ))# 3. 判断用户录入是否正确, 并提示.ifinput_numguess_num:print(恭喜你, 猜对了!)breakelifinput_numguess_num:print(你猜的数字太大了!)else:print(你猜的数字太小了!)1.2 for1.2.1 概述适用于 循环次数固定的情况, 例如: 录入银行卡密码…for循环较之于while循环, 无需编写: 控制条件(即: i 1)for循环结构主要用于序列 字符串、列表、元组、集合以及字典类型数据的遍历循环操作for i in 列表/字符串是通用写法i 是对象的实际元素适合直接使用元素的场景或者 for i in range()range(start, end, step)左闭右开[start,end)左闭右开[start,end)这里不写步长 默认是1range 步长为负range(5, 0, -1) → 生成 5,4,3,2,1倒序而随机数random是Python里为数不多的左闭右闭[start,end]另外要注意字符串、列表、元组的序列切片和 range () 一样都是遵循左闭右开规则。1.2.2 水仙花数案例#水仙花数#初始化计数器count0foriinrange(100,1000):# i 就是所有的三位数, 例如: 153# 3. 获取i这个三位数的个位, 十位, 百位数字.gei//1%10shii//10%10baii//100%10# 4. 判断是否是水仙花数.ifige**3shi**3bai**3:# 5. 走这里, 说明是水仙花数, 计数器 1即可.print(i,end )count1# 6. 提示: 水仙花数的个数.print(f水仙花数的个数是:{count})1.2.3 for循环嵌套1.2.3.1 概述for循环嵌套 外层控制 轮数内层控 每轮次数外循环执行一次, 内循环执行一轮(一圈), 类似于: 分针走一格, 秒针走一圈.1.2.3.2 案例1.2.3.2.1 99乘法表#99乘法表foriinrange(1,10):forjinrange(1,i1):bi*j# 用 end 让每个式子后面跟空格不自动换行print(f{j}*{i}{b},end )# 内层循环结束后手动换行print()1.2.3.2.2 打印特殊图形#打印5行5列矩形foriinrange(5):forjinrange(5):print(,end)print()print(**30)#打印5行5列正三角foriinrange(1,6):forjinrange(i):print(,end)print()print(**30)#这里打印的是4行4列正三角foriinrange(5):forjinrange(i):print(,end)print()print(**30)foriinrange(1,6):forjinrange(6-i):#或者i到6print(,end)print()print(**30)foriinrange(5):forjinrange(6-i):#或者i到6print(,end)print()foriinrange(1,10):forjinrange(1,i1):print(f{j}*{i}{i*j},end\t)print()1.2.3.2.3 模拟登录需求1: 模拟登录. 模拟登陆, 只给3次机会, 登录成功则程序结束, 登陆失败则提示剩余登陆次数. 假设账号: admin, 密码: admin666 # 1. 定义变量, 记录: 正确的账号和密码. 细节: 实际开发中, 账号和密码信息是从数据库中读取的.username,passwordadmin,admin666# 2. 模拟登陆, 因为只给3次机会, 所以使用for循环.foriinrange(3):# i的值: 0, 1, 2# 3. 提示用户录入他/她的账号和密码, 并接收.unameinput(请输入账号: )pwdinput(请输入密码: )# 4. 判断用户输入的账号和密码是否正确.ifunameusernameandpwdpassword:# 4.1 走这里, 表示登录成功, 提示, 然后退出即可.print(恭喜您登录成功!)breakelse:# 4.2 走这里, 表示登录失败, 判断有无剩余次数, 并提示.ifi2:# 5. 走这里, 表示无剩余次数, 提示锁卡.print(f账号或者密码错误, 尝试次数已达上限, 账号{username}已锁死, 请于管理员联系!)else:# 6. 走这里, 说明还有机会, 提示即可.print(f账号或者密码错误, 您还有{2-i}次机会!)