阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

案列:流程控制练习案例

396次阅读
没有评论

共计 3455 个字符,预计需要花费 9 分钟才能阅读完成。

一、中奖的概率

判断一个数需要随机多少次才能中奖,打印随机次数

import random num = 432 # for i in range(100,500): i = 0 while True: Winning = random.randrange(100,500) # 产生一个区间范围的随机数 i+=1 if num == Winning: print("中奖了 中奖号码是 {}".format(num)) break print(i)

二、求一个范围的 偶数 基数

# 求偶数 for i in range(1,101): if(i%2==0): print(i) # 等同于 for i in range(1,101): if i%2==1: continue print(i) # 求基数 for i in range(1,101): if(i%2!=0): print(i)

三、淘汰某一行

打印 0 - 9 数字 [5 除外],共打印 8 次:

  • 淘汰外循环的第五次输出
  • 内循环输出 0 1 2 3 4 6 7 8 9
for i in range(8): if i == 5:# 淘汰某一行 continue for j in range(10): if j==5: # 淘汰某一列 continue print(j, end=" ") print(' ')

四、判断俩个数的大小

判断俩个数的大小,如果 x >y 将俩个变量交换

x = 3 y = 1 if(x>y): z = x x = y y = z print(x,y)
不使用临时变量

我们也可以不创建临时变量,用一个非常优雅的方式来交换变量:

x,y = y,x

五、猜数字

num2 = 10.1 while True: try: num = eval(input("请输入你要猜的数字")) if num == num2: print("您猜的真准") break elif num>num2: print("您输入的数字太大了") else: print("您输入的数字太小了") except: print("请输入正确的数字")

六、三角形

(1)、for 实现左侧正三角形
# 左侧正三角形 for j in range(1,10): for i in range(1,j+1): print(i,end='') print('')
(2)、for 实现右侧正三角形
# 右侧正三角形 for j in range(1,10): for x in range(1,10-j): print('',end='') for i in range(1,j+1): print(i,end='') print('')
(3)、for 实现左侧倒三角形
# 左侧倒三角形 mylist = list(range(1,10)) mylist.reverse() for j in mylist: for i in range(1,j+1): print(i,end='') print('')
(4)、for 实现右侧倒三角形
# 右侧倒三角形 mylist = list(range(1,10)) mylist.reverse() print(mylist) for j in mylist: for x in range(1,10-j): # 输出空格 print('',end='') newlist = list(range(1,j+1)) newlist.reverse() for i in newlist: print(i,end='') print('')
(5)、while 实现左侧正三角形
#while 三角形 左正三角形 j = 1 while j<=9: i = 1 while i<=j: print(i,end='') i+=1 j+=1 print('')
(6)、while 实现右侧正三角形
# 右侧正三角形 j = 1 while j<=9: k = 1 while k<=9-j: print('',end='') k+=1 i = j while i>=1: print(i,end='') i-=1 j+=1 print('')
(7)、while 实现左侧倒三角形
# 左侧倒三角形 j = 9 while j>=1: i = 1 while i<=j: print(i,end='') i+=1 j-=1 print('')
(8)、while 实现右侧倒三角形
# 右侧倒三角形 j = 9 while j>=1: k = 1 while k<=9-j: print('',end='') k+=1 i = j while i>=1: print(i,end='') i-=1 j-=1 print('')

七、猜 21 点游戏

import random,time user1 = input('请输入玩家 1 的名称') user2 = input('请输入玩家 2 的名称') # 存储赢的次数的字典 user_info = {user1:{'win':0},user2:{'win':0}} while True: computer1_num = random.randint(1, 10) computer2_num = random.randint(1, 10) # 获取俩个用户想要输入的数字 user1_num = input('{}: 请输入一个数字 ( 按 q 退出游戏)'.format(user1)) user2_num = input('{}: 请输入一个数字 ( 按 q 退出游戏)'.format(user2)) # 如果有人输入了 q 则代表结束 if user1_num == 'q' or user2_num == 'q': print('欢迎下次在玩') break user1_sum = int(computer1_num) + int(computer2_num) + int(user1_num) user2_sum = int(computer1_num) + int(computer2_num) + int(user2_num) print('底牌数字为:',computer1_num,computer2_num) if abs(user1_sum-21) > abs(user2_sum-21): print('{}: 点数为:{} {}: 点数为:{} 结果:{} 获胜'.format(user1,user1_sum,user2,user2_sum,user2)) user_info[user2]['win'] += 1 else: print('{}: 点数为:{} {}: 点数为:{} 结果:{} 获胜'.format(user1, user1_sum, user2, user2_sum, user1)) user_info[user1]['win'] += 1 print('计算机正在重新洗牌') time.sleep(2)

八、登录

用户登陆验证系统

dbUserName = 'admin' dbUserPass = '123456' while True: loginName = input('请输入用户名') # 动态获取用户名 loginPass = input('请输入密码') # 动态获取用户输入的密码 state = 1 # 给一个用户名的状态值 默认为 1 if loginName != dbUserName: # 判断用户名是否不存在 print("该用户名不存在") state = 2 if state == 1: # 判断用户名的状态值 如果为 1 证明 用户名正确 所以该判断下面的密码了 if dbUserPass == loginPass: # 判断密码是否正确 print('欢迎',loginName) break else: print("请输入正确的密码") # 作业:加上验证码 验证码的要求 随机数 (不能每次都是一样的) dbUserName = 'admin' dbUserPass = '123456' while True: loginName = input('请输入用户名') # 动态获取用户名 loginPass = input('请输入密码') # 动态获取用户输入的密码 if loginName == dbUserName: # 判断用户名是否和之前已经注册过的用户名相同 (有人就是该用户是否存在) if loginPass == dbUserPass:# 如果用户名正确 判断密码是否正确 print("欢迎",loginName) break #r 如果密码正确跳出循环体 else: print("请输入正确的密码") else: print("该用户不存在!请输入正确的用户名") print("我是登录成功以后的内容")

九、阶乘

通过用户输入数字计算阶乘

# 通过用户输入数字计算阶乘 # 获取用户输入的数字 num = int(input("请输入一个数字:")) factorial = 1 # 查看数字是负数,0 或 正数 if num < 0: print("抱歉,负数没有阶乘") elif num == 0: print("0 的阶乘为 1") else: for i in range(1,num + 1): factorial = factorial*i =1*1*2*3*4 print("%d 的阶乘为 %d" %(num,factorial))

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-05-26发表,共计3455字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7802198
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...
星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛NAS-7:手把手教你免费内网穿透-Cloudflare tunnel

星哥带你玩飞牛 NAS-7:手把手教你免费内网穿透 -Cloudflare tunnel 前言 大家好,我是星...
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定! 前言 作为 NAS 玩家,你是否总被这些...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...