第7章 用户输入和 while 循环

第7章 用户输入和 while 循环

  • 7.1 函数 input()的工作原理
    • 7.1.1 编写清晰的程序
    • 7.1.2 使用 int()来获取数值输入
    • 7.1.3 求模运算符
  • 7.2 while 循环简介
    • 7.2.1 使用 while 循环
    • 7.2.2 让用户选择何时退出
    • 7.2.3 使用标志
    • 7.2.4 使用 break 退出循环
    • 7.2.5 在循环中使用 continue
    • 7.2.6 避免无限循环
  • 7.3 使用 while 循环处理列表和字典
    • 7.3.1 在列表之间移动元素
    • 7.3.2 删除为特定值的所有列表元素
    • 7.3.3 使用用户输入来填充字典

在这里插入图片描述

7.1 函数 input()的工作原理

7.1.1 编写清晰的程序

函数 input()接受一个参数,让用户应该输入何种信息。

num = input('输入一个数字: ')  # 等待输入
print(num)  # 输出

在这里插入图片描述

7.1.2 使用 int()来获取数值输入

使用函数 input()时,python解读为字符串。可使用函数 int(),它让 Python 将输入视为数值。

num = input('输入一个数字: ')  # 等待输入
num = int(num)
if num < 10:
    print(num)  # 输出

7.1.3 求模运算符

求模运算符(%)将两个数相除并返回余数。

print(10 % 3)  # 1
print(5 % 3)   # 2

7.2 while 循环简介

for循环用于针对集合中的每个元素都执行一个代码块,而while循环则不断运行,直到指定的条件不满足为止。

7.2.1 使用 while 循环

可使用 while 循环来数数。

i = 1
while i <= 5:
    print(i)  # 从1输出到5
    i = i + 1

7.2.2 让用户选择何时退出

定义一个退出值,只要用户输入的不是这个值,程序就将接着运行。

mess = ''
while mess != 'quit':
    mess = input('随便输入(输入quit则停止):')
    print(mess)

在这里插入图片描述

7.2.3 使用标志

在要求很多条件都满足才继续运行的程序中,可定义一个变量,用于判断整个程序是否处于
活动状态。

flag = True
while flag:
    mess = input('随便输入(输入quit则停止):')
    if mess == 'quit':
        flag = False
    else:
        print(mess)

在这里插入图片描述

7.2.4 使用 break 退出循环

要立即退出while循环,不在运行循环余下的代码,可以使用break语句。break 语句用于控制程序流程,可用来控制哪些代码行将执行、哪些代码行不执行。

num = 1
while True:
    print(num)
    if num > 3:
        break
    num = num + 1

在这里插入图片描述

7.2.5 在循环中使用 continue

要返回循环开头,并根据条件测试结果决定是否继续执行循环,可使用 continue 语句。

num = 0
while num < 10:
    num = num + 1
    if num % 2:  # num%2==1说明是奇数
        continue
    print(num)   # 输出偶数

在这里插入图片描述

7.2.6 避免无限循环

Ctrl + C,关闭显示程序输出的终端窗口。

7.3 使用 while 循环处理列表和字典

7.3.1 在列表之间移动元素

在一个列表中的数据提取出来,再将其加入另一个列表中。

str1 = ['A', 'B', 'C', 'D']
str2 = []
while str1:
    s = str1.pop()  # 获取最后一个元素,并删除了
    str2.append(s)  # 加入到新的列表中
print(str1)  # 空的
print(str2)  # ['D', 'C', 'B', 'A']

7.3.2 删除为特定值的所有列表元素

运行 while 循环,使用remove()方法删除列表中的特定值。

str1 = ['A', 'B', 'C', 'D', 'C', 'C']
while 'C' in str1:
    str1.remove('C')
print(str1)  # ['A', 'B', 'D']

7.3.3 使用用户输入来填充字典

可使用 while 循环提示用户输入任意多的信息。直到满足退出条件才终止程序。

mess = ''
while mess != 'quit':
    mess = input('随便输入(输入quit则停止):')
    print(mess)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

renren-fast-vue在mac上的运行

被这个折磨好久了&#xff0c;终于成功了。。 版本号-node-14 需要提前执行的命令&#xff0c;希望可以帮助到大家。分别是解决版本在mac m1架构上的不兼容问题&#xff0c;另外解决没有验证码的问题&#xff0c;要注意数据库的配置&#xff0c;账号密码是否正确。 npm inst…

【iOS】YYModel源码阅读笔记

文章目录 前言一、JSON转换库对比二、YYModel性能优化三、YYModel的使用四、架构分析YYClassInfo 剖析 五、流程剖析转换前准备工作 – 将JSON统一成NSDictionary将NSDictionary 转换为Model对象提取Model信息使用NSDictionary的数据填充Model 总结 前言 先前写了JSONModel的源…

【DBA早下班系列】—— 并行SQL/慢SQL 问题该如何高效收集诊断信息

1. 前言 OceanBase论坛问答区或者提交工单支持的时候大部分时间都浪费在了诊断信息的获取交互上&#xff0c;今天我就其中大家比较头疼的SQL问题&#xff0c;给大家讲解一下如何一键收集并行SQL/慢SQL所需要的诊断信息&#xff0c;减少沟通成本&#xff0c;让大家早下班。 2. …

course-nlp——4-regex

本文参考自https://github.com/fastai/course-nlp 正则表达式 在本课中&#xff0c;我们将学习 NLP 工具包中的一个有用工具&#xff1a;正则表达式。 让我们考虑两个激励性的例子&#xff1a; 电话号码问题 假设我们得到了一些包含电话号码的数据&#xff1a; 123-456-7890…

记录项目打包时候找不到本地仓库的依赖的解决方法

进入本地仓库对应jar的目录 删除_remote_reposotories文件即可

Photoshop界面介绍

Adobe Photoshop 2024版&#xff08;通称“Photoshop 2024”或简写为“PS 2024”&#xff09;下载方式【点我获取下载链接】 百度网盘下载https://pan.baidu.com/s/1JmuK8RMHt2Yyb7NFtgO2uQ?pwdSIMS Photoshop界面介绍 Photoshop&#xff0c;简称PS&#xff0c;是Adobe …

【MySQL】存储引擎

https://www.bilibili.com/video/BV1Kr4y1i7ru?p64 https://jimhackking.github.io/%E8%BF%90%E7%BB%B4/MySQL%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/#more MySQL体系结构&#xff1a; 连接层 最上层是一些客户端和链接服务&#xff0c;主要完成一些类似于连接处理、授权认证…

【代码随想录】【算法训练营】【第35天】 [1005]K次取反后最大化的数组和 [134]加油站 [135]分发糖果

前言 思路及算法思维&#xff0c;指路 代码随想录。 题目来自 LeetCode。 day 35&#xff0c;连休两天~ 题目详情 [1005] K次取反后最大化的数组和 题目描述 1005 K次取反后最大化的数组和 解题思路 前提&#xff1a;数组 思路&#xff1a;优先负数取反&#xff0c;未…

利用AI机器学习,助力发动机舱电磁场强仿真,轻松实现快速预测

当下工业仿真面临的难题&#xff1f; 在使用 Altair Feko 进行空间场强计算时&#xff0c;每次查询新坐标点的场强幅值都需要重新进行计算&#xff0c;这不仅耗时&#xff08;约20-30分钟&#xff09;&#xff0c;而且还需要考虑高级算力的排队时间。这种效率瓶颈严重限制了快速…

springboot三层架构与MVC,以及三层架构入门

三层架构与MVC 1. 三层架构是什么 把各个功能模块划分为表示层&#xff0c;业务逻辑层&#xff0c;和数据访问层三层架构&#xff0c;各层之间采用接口相互访问&#xff0c;并通过对象模型的实体类&#xff08;model&#xff09;作为数据传递的载体&#xff0c;不同的对象模型…

Rust : windows下protobuf和压缩传输方案

此前dbpystream库是用python开发 web api。今天在rust中试用一下protobuf。 本文关键词&#xff1a;编译器、protobuf、proto文件、序列化、zstd压缩&#xff0c;build。 一、 protobuf编译器下载 具体见相关文章。没有编译器&#xff0c;protobuf无法运行。 windows参见&am…

鸿蒙原生开发——轻内核A核源码分析系列三 物理内存(2)

3.1.2.3 函数OsVmPhysLargeAlloc 当执行到这个函数时&#xff0c;说明空闲链表上的单个内存页节点的大小已经不能满足要求&#xff0c;超过了第9个链表上的内存页节点的大小了。⑴处计算需要申请的内存大小。⑵从最大的链表上进行遍历每一个内存页节点。⑶根据每个内存页的开始…

02-DHCP原理与配置

1、DHCP的工作原理 当局域网中有大量的主机时&#xff0c;如果逐个为每一台主机手动设置IP地址、默认网关、DNS服务器地址等网络参数&#xff0c;这显然是一个费力也未必讨好的办法。 而DHCP服务器的应用&#xff0c;正好可以解决这一问题。 1.1 DHCP是什么 DHCP——动态主机…

[2024-06]-[大模型]-[Ollama] 0-相关命令

常用的ollama命令[持续更新中] ollama更新&#xff1a; curl https://ollama.ai/install.sh |sh带着flash attention启动&#xff1a; OLLAMA_FLASH_ATTENTION1 ollama serve停止ollama服务&#xff1a; sudo systemctl stop ollama note&#xff1a;目前遇到sudo systemctl …

驱动开发之 input 子系统

1.input 子系统介绍 input 就是输入的意思&#xff0c;input 子系统就是管理输入的子系统&#xff0c;和 pinctrl、gpio 子系统 一样&#xff0c;都是 Linux 内核针对某一类设备而创建的框架。比如按键输入、键盘、鼠标、触摸屏等 等这些都属于输入设备&#xff0c;不同的输入…

一文教你如何实现并发请求的失败自动重试及重试次数限制

需求 在并发接口请求的时候&#xff0c;能够自动对失败的请求进行重发尝试&#xff08;超过指定重试次数则不再重试&#xff09;,并将最终的结果返回&#xff08;包含每个请求是否成功、返回结果&#xff09; 核心思路 代码实现 使用案例 为了演示我们代码的最终实现效果&a…

使用 python 将 Markdown 文件转换为 ppt演示文稿

在这篇博客中&#xff0c;我们将展示如何使用 wxPython 创建一个简单的图形用户界面 (GUI)&#xff0c;以将 Markdown 文件转换为 PowerPoint 演示文稿。我们将利用 markdown2 模块将 Markdown 转换为 HTML&#xff0c;并使用 python-pptx 模块将 HTML 内容转换为 PowerPoint 幻…

HarmonyOS未来五年的市场展望

一、引言 随着科技的不断进步和消费者对于智能化设备需求的日益增长&#xff0c;操作系统作为连接硬件与软件的核心平台&#xff0c;其重要性愈发凸显。HarmonyOS&#xff08;鸿蒙系统&#xff09;&#xff0c;作为华为自主研发的分布式操作系统&#xff0c;自诞生以来便备受瞩…

6月11号作业

思维导图 #include <iostream> using namespace std; class Animal { private:string name; public:Animal(){}Animal(string name):name(name){//cout << "Animal&#xff1b;有参" << endl;}virtual void perform(){cout << "讲解员的…

UE4_后期_ben_模糊和锐化滤镜

学习笔记&#xff0c;不喜勿喷&#xff0c;侵权立删&#xff0c;祝愿生活越来越好&#xff01; 本篇教程主要介绍后期处理的简单模糊和锐化滤镜效果&#xff0c;学习之前首先要回顾下上节课介绍的屏幕扭曲效果&#xff1a; 这是全屏效果&#xff0c;然后又介绍了几种蒙版&#…