【每日一练】Python遍历循环

1. 情节描述:上公交车(10个座位),并且有座位就可以坐下

要求:输入公交卡当前的余额,只要超过2元,就可以上公交车;如果车上有空座位,才可以上。

seat = 10
while seat > 0:money = int(input("请输入余额:"))if money >= 2:print("刷卡成功。")seat -= 1else:print("余额不足,请充值。")
print("票已售完。")

在这里插入图片描述

2. 猜拳游戏

剪刀(0) 石头(1) 布(2)

该题使用到random库的randint(0,2)

(扩展:改成每次玩完添加对用户的问询,输入Y继续游戏,N则结束游戏)

恭喜你,胜利啦,是否还需要继续玩猜拳游戏(Y/N)?
from random import randintwhile True:player = int(input("请输入 0(剪刀)、1(石头)、2(布)"))if player < 0 or player > 2:print("输入有误,请重新输入。")else:computer = randint(0, 2)if computer == player:print("平局")elif ((computer == 0 and player == 1)or (computer == 1 and player == 2)or (computer == 2 and player == 0)):print("你赢了")elif ((computer == 0 and player == 2)or (computer == 1 and player == 0)or (computer == 2 and player == 1)):print("你输了")try_again = input("是否继续?(y/n)")if try_again == "y":continueelse:break

在这里插入图片描述

3.猜数字

随机生成一个0-100之间的整数,如果猜大了,提示猜大了,如果猜小了,提示猜小了,游戏继续,如果猜对了,给与恭喜类提示信息,游戏停止

from random import randintnumber = randint(0, 100)
while 1:number_input = int(input("请输入0-100之间的整数: "))if number_input == number:print("猜对了!")breakelif number_input < number:print("猜小了!")elif number_input > number:print("猜大了!")else:print("请输入0-100之间的整数。")

在这里插入图片描述

4.三角形判断

编写一个程序,要求用户输入一个三角形的三条边长,然后判断它们能否组成一个合法的三角形,并输出相应的消息。根据三角形的特性,两边之和必须大于任意一边的长度,否则无法构成三角形。

a = eval(input("请输入第一条边长: "))
b = eval(input("请输入第二条边长: "))
c = eval(input("请输入第三条边长: "))
if a > 0 and b > 0 and c > 0 and a + b > c and a + c > b and b + c > a :print("可以构成三角形。")
else:print("不可以构成三角形。")

在这里插入图片描述

5.求和 while for

  1. 求1~100的和
  2. 求1~100所有偶数的和 奇数和

1.for

sum = 0
for number in range(1,101):sum += number
print(f"1-100的和是:{sum}") 

在这里插入图片描述
while:

sum = 0
number = 1
while number <= 100:sum += numbernumber += 1
print(f"1-100的和是:{sum}")

在这里插入图片描述
2.所有偶数和
for:

sum = 0
for number in range(1, 101):if number % 2 == 0:sum += number
print(f"1-100的所有偶数和是:{sum}")

在这里插入图片描述
while:

sum = 0
number = 1
while number <= 100:if number % 2 == 0:sum += numbernumber += 1
print(f"1-100所有偶数和是:{sum}")

在这里插入图片描述

sum = 0
for number in range(1, 101):if number % 2 == 1:sum += number
print(f"1-100的所有奇数和是:{sum}")

在这里插入图片描述
while:

sum = 0
number = 1
while number <= 100:if number % 2 == 1:sum += numbernumber += 1
print(f"1-100所有奇数和是:{sum}")

在这里插入图片描述

6.break练习

求1~100的和,当总和大于2000时,终止循环

sum = 0
number = 1
while number <= 100:sum = sum + numbernumber = number + 1if sum > 2000:break
print(sum)
2016

打印 1~100 内,不能被 7 整除的所有数字。

for number in range(1, 101):if number % 7 != 0:print(number,end=" ")
1 2 3 4 5 6 8 9 10 11 12 13 15 16 17 18 19 20 22 23 24 25 26 27 29 30 31 32 33 34 36 37 38 39 40 41 43 44 45 46 47 48 50 51 52 53 54 55 57 58 59 60 61 62 64 65 66 67 68 69 71 72 73 74 75 76 78 79 80 81 82 83 85 86 87 88 89 90 92 93 94 95 96 97 99 100 
number = 1
while number <= 100:if number % 7 != 0:print(number,end=" ")number = number + 1
1 2 3 4 5 6 8 9 10 11 12 13 15 16 17 18 19 20 22 23 24 25 26 27 29 30 31 32 33 34 36 37 38 39 40 41 43 44 45 46 47 48 50 51 52 53 54 55 57 58 59 60 61 62 64 65 66 67 68 69 71 72 73 74 75 76 78 79 80 81 82 83 85 86 87 88 89 90 92 93 94 95 96 97 99 100 

计算 1~100 内,所有不能被 7 整除的数字之和。

sum7 = 0
for number in range(1, 101):if number % 7 != 0:sum7 += number
print(f" 1~100 内,所有不能被 7 整除的数字之和为:{sum7}")
 1~100 内,所有不能被 7 整除的数字之和为:4315
sum7 = 0
number = 1
while number <= 100:if number % 7 != 0:sum7 += numbernumber = number + 1
print(f" 1~100 内,所有不能被 7 整除的数字之和为:{sum7}")
 1~100 内,所有不能被 7 整除的数字之和为:4315

7.continue练习

遍历字符串"Hello World!"跳过空格。

for character in "Hello  World!":if character == " ":continueelse:print(character)
H
e
l
l
o
W
o
r
l
d
!

8.使用嵌套循环输出以下图案

1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
for i in range(1, 6):for j in range(1, i+1):print(j, end=" ")print()
1 
1 2 
1 2 3 
1 2 3 4 
1 2 3 4 5 

9.输出 2 的倍数,直到乘积大于 100。

number = 0
product = 1
while product <= 100 :number += 2product *= numberprint(number,end=" ")
2 4 6 8 

10.爬楼梯

使用嵌套循环描述爬楼梯的过程,例如,一共三层楼,每层有20个台阶,通过嵌套循环描述所爬的层数和台阶数

当前第1层第1个台阶
当前第1层第2个台阶
...
当前第2层第1个台阶
...
当前第2层第20个台阶
...
当前第3层第20个台阶
for F in range(1,4):for C in range(1,21):print(f"当前第{F}层第{C}个台阶")
当前第1层第1个台阶
当前第1层第2个台阶
当前第1层第3个台阶
当前第1层第4个台阶
当前第1层第5个台阶
当前第1层第6个台阶
当前第1层第7个台阶
当前第1层第8个台阶
当前第1层第9个台阶
当前第1层第10个台阶
当前第1层第11个台阶
当前第1层第12个台阶
当前第1层第13个台阶
当前第1层第14个台阶
当前第1层第15个台阶
当前第1层第16个台阶
当前第1层第17个台阶
当前第1层第18个台阶
当前第1层第19个台阶
当前第1层第20个台阶
当前第2层第1个台阶
当前第2层第2个台阶
当前第2层第3个台阶
当前第2层第4个台阶
当前第2层第5个台阶
当前第2层第6个台阶
当前第2层第7个台阶
当前第2层第8个台阶
当前第2层第9个台阶
当前第2层第10个台阶
当前第2层第11个台阶
当前第2层第12个台阶
当前第2层第13个台阶
当前第2层第14个台阶
当前第2层第15个台阶
当前第2层第16个台阶
当前第2层第17个台阶
当前第2层第18个台阶
当前第2层第19个台阶
当前第2层第20个台阶
当前第3层第1个台阶
当前第3层第2个台阶
当前第3层第3个台阶
当前第3层第4个台阶
当前第3层第5个台阶
当前第3层第6个台阶
当前第3层第7个台阶
当前第3层第8个台阶
当前第3层第9个台阶
当前第3层第10个台阶
当前第3层第11个台阶
当前第3层第12个台阶
当前第3层第13个台阶
当前第3层第14个台阶
当前第3层第15个台阶
当前第3层第16个台阶
当前第3层第17个台阶
当前第3层第18个台阶
当前第3层第19个台阶
当前第3层第20个台阶

11.计算5的阶乘

factorial = 1
for i in range(1, 6):factorial = factorial * i
print(factorial)
120

12.计算并输出1 到 10 的阶乘。

for i in range(1, 11):factorial = 1for j in range (1, i+1):factorial = factorial * jprint(f"{i}的阶乘为{factorial}")
1的阶乘为1
2的阶乘为2
3的阶乘为6
4的阶乘为24
5的阶乘为120
6的阶乘为720
7的阶乘为5040
8的阶乘为40320
9的阶乘为362880
10的阶乘为3628800

13、计算并输出1到10的阶乘之和

sumFactorial = 0
for i in range(1, 11):factorial = 1for j in range (1, i+1):factorial = factorial * jsumFactorial = sumFactorial + factorial
print(f"1到10的阶乘之和{sumFactorial}")
1到10的阶乘之和4037913

14.倒序输出 10 到 1 。

for num in range(10,0,-1):print(num)
10
9
8
7
6
5
4
3
2
1
num = 10
while num > 0:print(num)num -= 1
10
9
8
7
6
5
4
3
2
1

15.计算 2 的幂,从 2 的 0 次方到 2 的 10 次方。

for i in range(0,11):print(2**i)
1
2
4
8
16
32
64
128
256
512
1024
i = 0
while i < 11:print(2**i)i += 1
1
2
4
8
16
32
64
128
256
512
1024
### 16.使用循环绘制一个等腰三角形。
for i in range(1,9):for j in range(1,9-i):print(" ",end='')for k in range(1,2*i):print("*",end='')print()
       *************************************************
***************

17.使用循环绘制一个菱形。

for i in range(1,9):for j in range(1,9-i):print(" ",end='')for k in range(1,2*i):print("*",end='')print()
for a in range(8, 1,-1):for b in range(1, 10 - a):print(" ", end='')for c in range(1, 2 * a -2):print("*", end='')print()
       *************************************************
****************************************************************

18.人口增长预测

现有13亿人口,设每年增长0.8%,编写程序,计算多少年后达到26亿?

people = 13
year = 0
while people <= 26:people = people + people * 0.008year += 1
print(f"{year}年后达到26亿")
87年后达到26亿

19.水仙花数

输出“水仙花数”。所谓水仙花数是指1个3位的十进制数,其各位数字的立方和等于该数本身。例如:153是水仙花数,因为153 = 1 + 125 + 27 。

for bai in range(1, 10):for shi in range(0, 10):for ge in range(0, 10):if bai ** 3 + shi ** 3 + ge ** 3 == bai * 100 + shi * 10 + ge:print(f"{bai * 100 + shi * 10 + ge}是水仙花数")
153是水仙花数
370是水仙花数
371是水仙花数
407是水仙花数

20.输出100以内的所有素数。

for number in range(2,101):flag = 1for k in range(2,number):if number % k == 0:flag = 0breakif flag == 1:print(number,end=" ")
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 
number = 2
while number <= 100:flag = 1k = 2while k < number :if number % k == 0:flag = 0breakk = k + 1if flag == 1:print(number,end=" ")number += 1
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 
#答案
for number in range(2, 101):for k in range(2, number):if number % k == 0:breakelse:print(number, end=" ")

21.登录模拟

# 输入用户名和密码
# 如果从没有输入用户名,提示用户名不可为空,重新输入用户名
# 对用户名和密码进行等值判断,并且给予对应的提示,自输入非空用户名起,可错误三次,然后重新回归初始校验状态
username ="root"
password ="123"
log_count = 0
while 1:username_input = input("请输入用户名:")#第一次登录且用户名为空,提示用户名不能为空。if not username_input and log_count == 0:print("用户名不能为空")print(f"登录次数:{log_count}")else:password_input = input("请输入密码:")#登录成功,退出循环。if username_input == username and password_input == password:print("登录成功")breakelse:#登录失败,提示用户名或密码错误,登录次数+1,如果登录次数达到3次,提示登录失败,登录次数清零。print("用户名或密码错误")log_count += 1if log_count == 3:print("登录失败")log_count = 0print(f"登录次数:{log_count}")    
用户名不能为空
登录次数:0
用户名不能为空
登录次数:0
用户名不能为空
登录次数:0
用户名或密码错误
登录次数:1
用户名或密码错误
登录次数:2
用户名或密码错误
登录失败
登录次数:0
登录成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/39713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分层解耦----

分层解耦 类聚 软件中各个功能模块内部的功能联系. 例如: 高类聚示例&#xff1a;想象一下餐厅的厨房&#xff0c;每个厨师负责自己的工作站&#xff0c;一个专门做沙拉&#xff0c;一个专门烤肉&#xff0c;另一个专门做甜点。每个工作站内的工作高度类聚&#xff0c;即每个…

vite项目如何在本地启动https协议

vite项目如何在本地启动https协议 本地启动正常配置在vite.config.js文件中默认启动http协议的请求&#xff0c;如何改成https呢&#xff1f;今天的开发中遇到了这个问题项目需求&#xff1a; 本地启动https协议的前端页面并且正常访问后台https协议的接口 解决方法&#xff1a…

Elasticsearch:Runtime fields - 运行时字段(二)

这是继上一篇文章 “Elasticsearch&#xff1a;Runtime fields - 运行时字段&#xff08;一&#xff09;” 的续篇。 在查询时覆盖字段值 如果你创建的运行时字段与映射中已存在的字段同名&#xff0c;则运行时字段会隐藏映射字段。在查询时&#xff0c;Elasticsearch 会评估运…

MySQL 8.0新特性INTERSECT和EXCEPT用于集合运算

MySQL8.0.31 新版本的推出&#xff0c;MySQL增加了对SQL标准INTERSECT和EXCEPT运算符的支持。 1、INTERSECT INTERSECT输出多个SELECT语句查询结果中的共有行。INTERSECT运算符是ANSI/ISO SQL标准的一部分(ISO/IEC 9075-2:2016(E))。 我们运行两个查询&#xff0c;第一个会列…

Python基础小知识问答系列-获取列表中最大或最小N个元素

1. 问题: 怎么从数值列表中获取最大或最小几个元素&#xff1f; 怎么从字典元素列表中&#xff0c;获取字典中某个值最大或最小的几个字典元素&#xff1f; 2. 解决方法&#xff1a; 使用heapq模块中的nlargest、nsmallest。 示例&#xff1a; import heapqtest_list [1, 3…

java基于ssm+vue 病人跟踪治疗信息管理系统

1病人功能模块 病人登录进入病人跟踪治疗信息管理系统可以查看首页、个人中心、病例采集管理、预约管理、医生管理、上传核酸检测报告管理、上传行动轨迹管理、病人治疗状况管理等内容。 病例采集管理&#xff0c;在病例采集管理页面可以查看账号、姓名、住院号、入院时间、病…

电通出席2024年世界经济论坛(WEF),重申推动可持续发展创新和人才培育的承诺

中国&#xff0c;上海——电通将出席世界经济论坛2024年新领军者年会&#xff08;夏季达沃斯&#xff09;&#xff0c;本次大会将于6月25日至6月27日在中国大连举行。 2024年世界经济论坛主题为“未来增长的新前沿”&#xff0c;将聚焦于全球经济复苏、通胀缓解&#xff0c;以…

前端基础:JavaaScript(篇二)

目录 内置对象 String字符串 属性 代码 运行 方法 代码 运行 日期 代码 运行 Math 代码 运行 数组 定义 属性 代码 运行 方法 join(分隔符>) &#xff1a; 代码 运行 reverse()&#xff1a; 代码 运行 sort() &#xff1a; 代码 运行 事件 …

Elasticsearch实战教程: 如何在海量级数据中进行快速搜索

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 Elasticsearch&#xff08;简称ES&#xff09;是一个基于Apache Lucene™的开源搜索引擎&#xff0c;无论在开源还是专有领…

【SPIE独立出版】第四届智能交通系统与智慧城市国际学术会议(ITSSC 2024)

第四届智能交通系统与智慧城市国际学术会议&#xff08;ITSSC 2024&#xff09;将于2024年8月23-25日在中国西安举行。本次会议主要围绕智能交通、交通新能源、无人驾驶、智慧城市、智能家居、智能生活等研究领域展开讨论&#xff0c; 旨在为该研究领域的专家学者们提供一个分享…

SWOT视角洞察:一篇文章详解AI Agent发展

AI Agent自盖茨远见后火爆&#xff0c;吴恩达提出设计模式成创业圣经。其优势显著&#xff1a;技术门槛低&#xff0c;市场需求广&#xff0c;非技术人员可参与开发。然而&#xff0c;挑战亦不容忽视&#xff1a;技术成熟度需提升&#xff0c;数据安全和隐私保护待加强&#xf…

Linux shell编程学习笔记61: pstree 命令——显示进程树

0 前言 在 Linux shell编程学习笔记59&#xff1a; ps 获取系统进程信息&#xff0c;类似于Windows系统中的tasklist 命令https://blog.csdn.net/Purpleendurer/article/details/139696466?spm1001.2014.3001.5501 中我们研究了ps命令。在Linux中&#xff0c;通过ps命令&am…

【Hec-Ras】第一期:软件安装

Hec-Ras软件安装 1 HEC-RAS软件介绍2 HEC-RAS软件下载3 HEC-RAS软件安装4 HEC-RAS软件界面介绍参考 1 HEC-RAS软件介绍 HEC-RAS 是美国陆军工程兵团工程水文中心&#xff08; Hydrologic Engineering Centers, HEC&#xff09;开发的河道水力计算程序&#xff08;River Analys…

go sync包(五) WaitGroup

WaitGroup sync.WaitGroup 可以等待一组 Goroutine 的返回&#xff0c;一个比较常见的使用场景是批量发出 RPC 或者 HTTP 请求&#xff1a; requests : []*Request{...} wg : &sync.WaitGroup{} wg.Add(len(requests))for _, request : range requests {go func(r *Reque…

WebSocket解决方案(springboot 基于Redis发布订阅)

WebSocket 因为一般的请求都是HTTP请求&#xff08;单向通信&#xff09;&#xff0c;HTTP是一个短连接&#xff08;非持久化&#xff09;&#xff0c;且通信只能由客户端发起&#xff0c;HTTP协议做不到服务器主动向客户端推送消息。WebSocket确能很好的解决这个问题&…

基于SpringBoot的漫画网站系统

你好呀&#xff0c;我是计算机学姐码农小野&#xff01;如果有相关需求&#xff0c;可以私信联系我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;B/S架构模式、Java技术 工具&#xff1a;Visual Studio、MySQL数据库开发工具 系统展示 首页 用户…

零基础学习MySQL---MySQL入门

顾得泉&#xff1a;个人主页 个人专栏&#xff1a;《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂&#xff0c;年薪百万&#xff01; 一、什么是数据库 问&#xff1a;存储数据用文件就可以了&#xff0c;为什么还要弄个数据库呢&#xff1f; 这就不得不提…

如何在《语文新读写》期刊上发表论文?

如何在《语文新读写》期刊上发表论文&#xff1f; 《语文新读写》知网 省级G4 3版面4800字符数 24年10-11月 可版权页查稿 出刊晚5个月 《语文新读写》栏目&#xff1a;视点_本期特稿、视点_百家争鸣、探索_教材新探、探索_阅读风向、探索_写作杂谈、实践_教法学法、实践_教…

【python】OpenCV—Feature Detection and Matching

参考学习来自OpenCV基础&#xff08;23&#xff09;特征检测与匹配 文章目录 1 背景介绍2 Harris角点检测3 Shi-Tomasi角点检测4 Fast 角点检测5 BRIEF 特征描述子6 ORB(Oriented Fast and Rotated Brief) 特征描述子7 SIFT(Scale Invariant Feature Transform) 特征描述子8 SU…

Milvus ConnectionRefusedError: how to connect locally

题意&#xff1a;怎样在本地连接到 Milvus 数据库。连接 Milvus 数据库被拒绝的错误 问题背景&#xff1a; I am trying to run a RAG pipeline using haystack & Milvus. 我正在尝试使用 haystack 和 Milvus 运行一个 RAG&#xff08;检索增强型生成&#xff09;管道。 …