PYTHON从入门到实践7-获取用户输入与while循环

# 【1】获取用户输入
# 【2】python数据类型的转换
input_res = input("请输入一个数字\n")
if int(input_res) % 10 == 0:print("你输入的数是10的倍数")
else:print("你输入的数不是10的倍数")
# 【3】while循环,适合不知道循环多少次
input_res = input("请输入奶茶配料\n")
while input_res != "quit":print("好的,奶茶会为你添加", input_res)input_res = input("请输入奶茶配料\n")

一、获取用户输入

在Python中,我们可以使用内置的input()函数来获取用户的输入。这个函数会暂停程序执行,等待用户在命令行中输入内容,并以字符串的形式返回用户输入。

python

复制

下载

input_res = input("请输入一个数字\n")

input()函数可以接受一个字符串参数,这个字符串将作为提示信息显示给用户。在上面的例子中,提示信息是"请输入一个数字",\n表示换行,使光标移动到下一行。

二、数据类型转换

用户输入的内容默认都是字符串类型,但有时我们需要将其转换为其他类型进行处理。Python提供了几种内置的数据类型转换函数:

  • int(): 将字符串转换为整数

  • float(): 将字符串转换为浮点数

  • str(): 将其他类型转换为字符串

在我们的例子中,我们需要判断用户输入的数字是否是10的倍数,因此需要将字符串转换为整数:

python

复制

下载

if int(input_res) % 10 == 0:print("你输入的数是10的倍数")
else:print("你输入的数不是10的倍数")

这里int(input_res)将用户输入的字符串转换为整数,然后使用取模运算符%判断是否能被10整除。

三、while循环的使用

while循环是Python中的一种基本循环结构,它会在条件为真时重复执行代码块。while循环特别适合在不确定循环次数的情况下使用。

在我们的奶茶配料例子中:

python

复制

下载

input_res = input("请输入奶茶配料\n")
while input_res != "quit":print("好的,奶茶会为你添加", input_res)input_res = input("请输入奶茶配料\n")

这个循环的工作流程是:

  1. 首先获取用户输入的配料

  2. 检查输入是否等于"quit"

  3. 如果不等于"quit",则执行循环体(打印添加配料的信息并再次获取输入)

  4. 重复步骤2-3,直到用户输入"quit"为止

四、实际应用中的注意事项

  1. 输入验证:在实际应用中,应该对用户输入进行验证。例如在第一个例子中,如果用户输入的不是数字,int()转换会引发ValueError异常。

    改进版本:

    python

    复制

    下载

    input_res = input("请输入一个数字\n")
    try:if int(input_res) % 10 == 0:print("你输入的数是10的倍数")else:print("你输入的数不是10的倍数")
    except ValueError:print("请输入有效的数字!")
  2. 循环退出条件:在while循环中,确保有明确的退出条件,否则可能导致无限循环。

  3. 用户体验:可以提供更友好的提示信息,比如在奶茶配料例子中,可以告诉用户如何退出:

    python

    复制

    下载

    print("请输入奶茶配料,输入'quit'结束")

五、总结

本文介绍了Python中处理用户输入的input()函数、数据类型转换以及while循环的使用。这些是Python编程的基础知识,掌握它们对于开发交互式程序非常重要。关键点包括:

  1. input()函数总是返回字符串

  2. 使用int()float()等函数进行类型转换

  3. while循环适合不确定循环次数的情况

  4. 在实际应用中要考虑输入验证和用户体验

希望这篇教程能帮助你更好地理解Python中的用户输入处理和循环控制。试着修改这些例子,加入更多功能来巩固你的理解吧!

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

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

相关文章

学习笔记(C++篇)—— Day 8

1.STL简介 STL(standard template libaray-标准模板库):是C标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。 2.STL的六大组件 先这样,下一部分是string的内容,内容比较多&a…

ant+Jmeter+jenkins接口自动化,如何实现把执行失败的接口信息单独发邮件?

B站讲的最好的自动化测试教程,工具框架附项目实战一套速通,零基础完全轻松掌握!自动化测试课程、web/app/接口 实现AntJMeterJenkins接口自动化失败接口邮件通知方案 要实现只发送执行失败的接口信息邮件通知,可以通过以下步骤实…

恶意Python包“psslib“实施拼写错误攻击,可强制关闭Windows系统

Socket威胁研究团队发现一个名为psslib的恶意Python包,该软件包伪装成提供密码安全功能,实则会突然关闭Windows系统。这个由化名umaraq的威胁行为者开发的软件包,是对知名密码哈希工具库passlib的拼写错误仿冒(typosquatting&…

云原生灰度方案对比:服务网格灰度(Istio ) 与 K8s Ingress 灰度(Nginx Ingress )

服务网格灰度与 Kubernetes Ingress 灰度是云原生环境下两种主流的灰度发布方案,它们在架构定位、实现方式和适用场景上存在显著差异。以下从多个维度对比分析,并给出选型建议: 一、核心区别对比 维度服务网格灰度(以 Istio 为例…

科技如何影响我们的生活?

科技已成为我们生活中不可或缺的一部分,彻底改变了我们工作、沟通和生活的方式。从智能手机到智能家居,科技已渗透到我们生活的每个角落。无论是用手机闹钟开启新的一天,通过 Alexa 开关灯光,还是打开 Uber 或 Lyft 打车上班&…

Re--攻防世界-基础android

Jadx 可以看到有账号密码输入 进入checkPassword函数 分析一下: 对每个字符 pass[len] 进行以下计算 pass[len] (char) (((255 - len) - 100) - pass[len]); 解密脚本 def decrypt_password(): password [] for len in range(12): c (255 - le…

InnoDB表空间结构-系统表空间

系统表空间整体结构 页号为7的SYS类型页结构

如何构建知识库

构建个人知识库是一个系统化的过程,需要结合工具选择、信息管理和持续优化。以下是分步骤的实用指南,包含现代工具和方法的建议: 一、明确知识库定位(Why) ​核心目标​ 学习型:支持学术研究/职业发展&…

3 大语言模型预训练数据-3.2 数据处理-3.2.2 冗余去除——2.SimHash算法文本去重实战案例:新闻文章去重场景

SimHash算法文本去重实战案例:新闻文章去重场景 一、案例背景与目标二、具体实现步骤与示例1. **待去重文本示例**2. **步骤1:文本预处理与特征提取**3. **步骤2:特征向量化与哈希映射**4. **步骤3:特征向量聚合**5. **步骤4&…

MSPM0G3507之GPIO配置报错 #Sysconfig报错

声明:本文完全免费阅读,如果你发现某天文章被设置了“VIP权限”,请私信我解除(非笔者所为)。 一、问题现象 在打开sysconfig后,GPIO这里会报错。 Unable to render selection Error:launchPadShortcut:Vali…

2025年检测相机十大品牌测评:工业级精度与场景化解决方案解析

一、引言 在工业自动化与智能制造领域,检测相机作为质量管控的核心硬件,正以“高精度、高速度、高适应性”的特性重塑生产流程。这类设备通过光学成像与智能算法结合,实现对工件表面缺陷、尺寸偏差、装配精度的精准检测,效率较传…

Python异步编程深度解析

一、异步编程范式演进 同步阻塞的困境:GIL限制与线程切换开销 事件循环本质:单线程并发模型 协程优势:比线程更轻量的执行单元 IO密集型场景:网络请求/文件操作的最佳实践 二、核心语法精要 import asyncioasync def fetch_…

网络缓冲区

用户态网络缓冲区 网络缓冲区原理为什么需要用户态网络缓冲区Linux下如何接收和发送数据包用户态网络缓冲区设计的本质 网络缓冲区代码实现 网络缓冲区原理 为什么需要用户态网络缓冲区 在网络开发中,我们经常使用到read/write/recv/send等系统调用接口&#xff0…

微信小程序实现简版点赞动画

这是第二次写canvas,基于微信小程序文档demo进行改写 demo效果为方块横向来回循环移动 我想做的是直播间那种点赞效果,竖向曲线移动、方块换成图片、点击添加绘制元素 第一阶段实现竖向曲线移动、点击添加绘制元素;下一阶段讲方块替换为图…

实现一个AI大模型当前都无法正确实现的基础二叉树读取算法

概述 图1: 图2: 上图帮大家温习完全二叉树的概念,本文讲的是完全顺序二叉树的初始化 华为的员工、考过华为OD的员工、参加过其他类似大厂的考试的员工一般做过二叉树的初始化,甚至有些还碰到过手撕代码时面试官要求做二叉树遍历,看完本文的…

【攻防篇】阿里云服务器中 如何关闭docker api端口

在阿里云服务器(ECS)上,Docker API 默认监听 2375(非加密)和 2376(TLS加密)端口。如果未正确配置,可能被恶意利用(如挖矿攻击)。以下是关闭和加固 Docker API…

暑假复习篇之类与对象

面向对象:①类与对象②封装③继承④接口 类与对象: 概念:类就是类别的意思 用class表示 / 面向对象编程,万物皆可编程,在程序中表示一个事物时,往往因为事物的复杂程度导致编程的代码非常复杂 【基本数…

RabbitMQ RPC模式Python示例

文章目录 1.服务端2.客户端3.调用结果 1.服务端 #!/usr/bin/env python3 # -*- coding: UTF-8 -*- """ File: rabbitmq_server.py Date: 2025/6/26 10:42 Author: xxx Description: 1. RabbitMQ服务端,支持多节点命令执行 2. 作为被控…

Rust代码规范之蛇形命名法和驼峰命名法

Rust 使用两种主要的命名风格:驼峰命名法(UpperCamelCase)和蛇形命名法(snake_case)。通常,类型(如结构体、枚举、特征)使用驼峰命名法,而变量、函数、方法等使用蛇形命名…

编写CSS的格式

1、内联样式的css import React, { PureComponent } from reactexport class App extends PureComponent {constructor() {super()this.state {fs: 20}}render() {const { fs } this.statereturn (<div><p style{{ color: red, fontSize: ${fs}px }}>哈哈哈哈哈…