【每日一练】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 

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.rhkb.cn/news/366422.html

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

相关文章

CentOS修复OpenSSH漏洞升级到openssh 9.7 RPM更新包

在做政府和学校单位网站时&#xff0c;经常需要服务器扫描检测&#xff0c;经常被OpenSSH Server远程代码执行漏洞&#xff08;CVE-2024-6387&#xff09;安全风险通告&#xff0c;出了报告需要升级OpenSSH。 使用yum update openssh是无法更新到最新的&#xff0c;因为系统里的…

JsonCpp:更简洁的序列化及反序列化

简介 jsoncpp 提供了一组简单易用的 API&#xff0c;使得在 C 程序中处理 JSON 数据变得更加方便和高效。 安装 linux环境下安装jsoncpp sudo apt-get update sudo apt-get install --reinstall libjsoncpp-dev建立软链接确保编译器找到头文件 #include <json/json.h>…

Vue原生写全选反选框

效果 场景&#xff1a;Vue全选框在头部&#xff0c;子框在v-for循环内部。 实现&#xff1a;点击全选框&#xff0c;所有子项选中&#xff0c;再次点击取消&#xff1b;子项全选中&#xff0c;全选框自动勾选&#xff0c;子项并未全选&#xff0c;全选框不勾选&#xff1b;已选…

LVM核心概念

1. LVM简介 LVM是逻辑盘卷管理&#xff08;Logical Volume Manager&#xff09;的简称&#xff0c;它是Linux环境下对磁盘分区进行管理的一种机制&#xff0c;LVM是建立在硬盘和分区之上的一个逻辑层&#xff0c;来提高磁盘分区管理的灵活性。 优点&#xff1a; 可以灵活分配…

大数据学习之Clickhouse

Clickhouse-23.2.1.2537 学习 一、Clickhouse概述 clickhouse 官网网址&#xff1a;https://clickhouse.com/ ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。 OLTP(联机事务处理系统)例如mysql等关系型数据库&#xff0c;在对于存储小数据量的时候&#xff…

Langchain-Chatchat本地部署记录,三分钟学会!

1.前言&#xff1a; 最近AI爆发式的火&#xff0c;忆往昔尤记得16,17那会移动互联网是特别火热的&#xff0c;也造富了一批公司和个人&#xff0c;出来了很多精妙的app应用。现在轮到AI发力了&#xff0c;想想自己也应该参与到这场时代的浪潮之中&#xff0c;所以就找了开源的…

【TB作品】atmega16 计算器,ATMEGA16单片机,Proteus仿真

实验报告&#xff1a;基于ATmega16单片机的简易计算器设计 1. 实验背景 计算器是日常生活和工作中不可或缺的工具&#xff0c;通过按键输入即可实现基本的四则运算。通过本实验&#xff0c;我们将利用ATmega16单片机、矩阵键盘和LCD1602显示屏&#xff0c;设计并实现一个简易…

一招解决 | IP地址访问怎么实现https

没有域名的情况下&#xff0c;使用IP地址实现HTTPS访问是可以的&#xff0c;但相比使用域名会有些许限制&#xff0c;需要通过部署专用于IP地址的SSL/TLS证书来实现。 IP地址实现HTTPS访问的过程与使用域名类似&#xff0c;但有几个关键的区别。以下是使用IP地址实现HTTPS访问…

Win10 电脑屏幕保护怎么设置?学会了你也能轻松设置屏保

在 Windows 10 操作系统中&#xff0c;屏幕保护程序不仅能够为您的电脑增添个性化色彩&#xff0c;还能在长时间不操作电脑时保护屏幕免受烧屏影响。下面是一份详细指南&#xff0c;简鹿办公编辑教您如何通过 Windows 搜索框设置屏幕保护程序&#xff0c;并调整相关参数&#x…

uniapp——上传图片获取到file对象而非临时地址——基础积累

最近在看uniapp的代码&#xff0c;遇到一个需求&#xff0c;就是要实现上传图片的功能 uniapp 官网地址&#xff1a;https://uniapp.dcloud.net.cn/ 上传图片有对应的API&#xff1a; uni.chooseImage方法&#xff1a;https://uniapp.dcloud.net.cn/api/media/image.html#choo…

使用uniapp编写微信小程序

使用uniapp编写微信小程序 文章目录 使用uniapp编写微信小程序前言一、项目搭建1.1 创建项目方式1.1.1 HBuilderX工具创建1.1.2 命令行下载1.1.3 直接Gitee下载 1.2 项目文件解构1.2.1 安装依赖1.2.2 项目启动1.2.3 文件结构释义 1.2 引入uni-ui介绍 二、拓展2.1 uni-app使用uc…

“探索价值增长消费:让每一笔购物都成为增值之旅“

亲爱的顾客们&#xff0c;你们好&#xff01;今天&#xff0c;我将带你们探索一种革命性的消费哲学——价值增长消费&#xff0c;让每一次购物都成为一次增值之旅&#xff01; 在传统消费观念里&#xff0c;我们付出金钱换取商品或服务&#xff0c;随后这些便成为过去。但如今…

2024 年江西省研究生数学建模竞赛题目 B题投标中的竞争策略问题---完整文章分享(仅供学习)

问题&#xff1a; 招投标问题是企业运营过程中必须面对的基本问题之一。现有的招投标平台有国家级的&#xff0c;也有地方性的。在招投标过程中&#xff0c;企业需要全面了解招标公告中的相关信息&#xff0c;在遵守招投标各种规范和制度的基础上&#xff0c;选择有效的竞争策…

【AI绘画Stable Diffusion】教你制作 SD 光影文字,保姆级教程建议收藏!(附模型下载)

大家好&#xff0c;我是设计师阿威 最近光影文字又开始火起来了。今天讲讲怎么利用 Stable Diffusion 的 ControlNet 插件来制作光影图片。 1.下载光影模型组件 1.SD主模型&#xff1a;majicMIX realistic V6、xxmix9realistic_v26 2. ControlNet 的模型&#xff1a;Bright…

CV每日论文--2024.6.28

1、On Scaling Up 3D Gaussian Splatting Training 中文标题&#xff1a;扩展 3D 高斯泼溅训练 简介&#xff1a;3D高斯点描(3DGS)由于其卓越的视觉质量和渲染速度,越来越受欢迎用于3D重建。然而,3DGS的训练目前仅在单个GPU上进行,由于内存限制,它的处理高分辨率和大规模3D重建…

【海思Hi3403V100】多目拼接相机套板硬件规划方案

海思Hi3403V100 是专业超高清智能网络摄像头 SoC。该芯片最高支持四路 sensor 输入&#xff0c;支持最高 4K60fps 的 ISP 图像处理能力&#xff0c;支持 3F 、WDR、多级降噪、六轴防抖、硬件拼接、多光谱融合等多种传统图像增强和处理算法&#xff0c;支持通过AI 算法对输入图像…

【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人

系列篇章&#x1f4a5; No.文章1【Qwen部署实战】探索Qwen-7B-Chat&#xff1a;阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验&#xff1a;用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B&#xff1a;通过FastApi框架实现API的部署与调用4【Q…

windows USB 驱动开发-URB结构

通用串行总线 (USB) 客户端驱动程序无法直接与其设备通信。 相反&#xff0c;客户端驱动程序会创建请求并将其提交到 USB 驱动程序堆栈进行处理。 在每个请求中&#xff0c;客户端驱动程序提供一个可变长度的数据结构&#xff0c;称为 USB 请求块 (URB) &#xff0c;URB 结构描…

从理论到实践的指南:企业如何建立有效的EHS管理体系?

企业如何建立有效的EHS管理体系&#xff1f;对于任何企业&#xff0c;没有安全就谈不上稳定生产和经济效益&#xff0c;因此建立EHS管理体系是解决企业长期追求的建立安全管理长效机制的最有效手段。良好的体系运转&#xff0c;可以最大限度地减少事故发生。 这篇借着开头这个…