Python手把手教程之用户输入input函数

Python的Print输出函数和Input输入函数 输出函数print、输入函数input的语法及各个参数实例 阅读详情

函数input()

函数 input() 让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。 例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:

message = input("Tell me something, and I will repeat it back to you: ")
print(message) 
复制代码

函数 input( )接受一个参数:即要向用户显示的提示或说明,让用户知道该如何做。在这个示例中,用户将看到提示 Tell me something, and I will repeat it back to you: 。程序等待用户输入,并在用户按回车键后继续运行。 输入存储在变量 message 中,接下来的 print(message) 将输入呈现给用户:

Tell me something, and I will repeat it back to you: This is Fulade!
This is Fulade! 
复制代码

每当你使用函数 input() 时,都应指定清晰而易于明白的提示,准确地指出你希望用户提供什么样的信息——指出用户该输入任何信息的提示都行,如下所示:

name = input("Please enter your name: ")
print("Hello, " + name + "!") 
复制代码

通过在提示末尾(这里是冒号后面)包含一个空格,可将提示与用户输入分开,让用户清楚地知道其输入始于何处,如下所示:

Please enter your name: Fulade
Hello, Fulade! 
复制代码

int()函数

使用函数 input() 时,Python将用户输入解读为字符串。请看下面让用户输入其年龄的解释器会话

>>> age = input("How old are you? ")
How old are you? 21
>>> age
'21' 
复制代码

用户输入的是数字21,但我们请求Python提供变量 age 的值时,它返回的是'21'——用户输入 的数值的字符串表示。我们怎么知道Python将输入解读成了字符串呢?因为这个数字用引号括起 了。

如果我们只想打印输入,这一点问题都没有;但如果你试图将输入作为数字使用,就会引发错误:

>>> age = input("How old are you? ")
How old are you? 21
>>> age >= 18
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
TypeError: unorderable types: str() >= int()
复制代码

你试图将输入用于数值比较时,Python会引发错误,因为它无法将字符串和整数进 行比较:不能将存储在 age 中的字符串'21'与数值18进行比较。

为解决这个问题,可使用函数 int() ,它让Python将输入视为数值。函数 int() 将数字的字符 串表示转换为数值表示,如下所示:

>>> age = input("How old are you? ")
How old are you? 21
>>> age = int(age)
>>> age >= 18
True
复制代码

在这个示例中,我们在提示时输入21后,Python将这个数字解读为字符串,但随后 int() 将这个字符串转换成了数值表示。

这样Python就能运行条件测试了:将变量age(它现在包含数值21)同18进行比较,看它是否大于或等于18。测试结果为 True 。 如何在实际程序中使用函数 int() 呢?请看下面的程序,它判断一个人是否满足坐过山车的身高要求:

height = input("How tall are you, in inches? ")
height = int(height)
if height >= 36:
    print("\nYou're tall enough to ride!")
else: 
    print("\nYou'll be able to ride when you're a little older.") 
复制代码

在这个程序中,为何可以将height同36进行比较呢?因为在比较前,height = int(height) 将输入转换成了数值表示。如果输入的数字大于或等于36,我们就告诉用户他满足身高条件:

How tall are you, in inches? 71
You're tall enough to ride! 
复制代码

将数值输入用于计算和比较前,务必将其转换为数值表示。

使用while推出

可使用 while 循环让程序在用户愿意时不断地运行,我们在其中定义了一个退出值,只要用户输入的不是这个值,程序就可以接着运行:

prompt = "\nTell me something, and I will repeat it back to you:"
prompt += "\nEnter 'quit' to end the program. "
message = ""
while message != 'quit':
    message = input(prompt)
    print(message) 
复制代码

我们定义了一条提示消息,告诉用户他有两个选择:要么输入一条消息,要么输 入退出值(这里为'quit')。

接下来,我们创建了一个变量—— message ,用于存储用户 输入的值。我们将变量 message 的初始值设置为空字符串"",让Python首次执行 while 代码行时有可供检查的东西。

Python首次执行 while 语句时,需要将 message 的值与'quit'进行比较,但此时用户还没有输入。如果没有可供比较的东西,Python将无法继续运行程序。

为解决这个问题,我们必须给变量 message 指定一个初始值。虽然这个初始值只是一个空字符串,但符合要求,让Python能够执行 while 循环所需的比较。只要 message 的值不是'quit',这个循就会不断运行。

首次遇到这个循环时, message 是一个空字符串,因此Python进入这个循环。执行到代码行 message = input(prompt) 时,Python显示提示消息,并等待用户输入。

不管用户输入是什么,都 将存储到变量 message 中并打印出来;接下来,Python重新检查 while 语句中的条件。只要用户输入的不是单词 quit ,Python就会再次显示提示消息并等待用户输入。

等到用户终于输入 quit 后,Python停止执行while循环,而整个程序也到此结束:

Tell me something, and I will repeat it back to you:
Enter 'quit' to end the program. Hello everyone!
Hello everyone!
Tell me something, and I will repeat it back to you:
Enter 'quit' to end the program. Hello again. 
Hello again.
Tell me something, and I will repeat it back to you:
Enter 'quit' to end the program. quit
quit 
复制代码

这个程序很好,唯一美中不足的是,它将单词 quit 也作为一条消息打印了出来。为修复这种问题,只需使用一个简单的if判断:

prompt = "\nTell me something, and I will repeat it back to you:"
prompt += "\nEnter 'quit' to end the program. "
message = ""
while message != 'quit':
    message = input(prompt)
    if message != 'quit':
        print(message) 
复制代码

现在,程序在显示消息前将做简单的检查,仅在消息不是退出值时才打印它。

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理

想要获取更多Python学习资料可以加
QQ:2955637827私聊
或加Q群630390733
大家一起来学习讨论吧!

内存优化--LOGBACK导致内存告警 一.故事背景 由于开辟新市场需要,开发了新的项部署在海外平台,其中最消耗内存的功能是消费kafka消息(最开始预计一天有1千万的量),部署完之后运行一段时间发现出现内存告警问题。 二.分析问题 出现内存告警,(新项目是低配置机器 2C4G * 2台)第一个念头是去查看堆空间设置的情况,看到jvm启动命令中堆空间都是直接指定大小,说明问题不是出在堆空间 -Xmx3g -Xms3g 先不管这些,去查看总的内存使用情况,发现总的内存空间使用将近有92% = 3.68G,那么这多出来使用的0.6 阅读详情

相关推荐

逆向工程实战:如何一步步破解京东APP的sign签名算法(附Frida脚本)

本文详细解析了京东APP的sign签名算法逆向工程实战,通过Frida脚本动态分析Java层和Native层的多层签名机制,揭示商业应用的加密协议设计。文章提供了完整的逆向工程方法论与工具链,帮助开发者深入理解移动应用安全防护体系,提升安全防御能力。

weixin_28622215的博客 920

轻量化网络学习 3 squeezenet

文章目录1、保存设置 1、保存设置 def zipdir(path, ziph): files = os.listdir(path) for file in files: if file.endswith(".py") or file.endswith("cfg"): ziph.write(os.path.join(path, file)) if file.endswith("cfg"): os.

weixin_42630613的博客 417

非线性功率放大器对QAM传输BER性能的影响及补偿

1、线性功率放大器对传输性能的影响 为表述非线性功率放大器对传输性能的影响,以Saleh模型进行观察。具体来说,在QAM调制器之后添加一个非线性模块,使调制后的波形经历AM / AM和AM / PM转换。 在Saleh模型中,转换用四个参数表示,即AM / AM转换为????a和????a,AM / PM转换为????p和????p。 在Saleh模型中,AM / AM和AM / PM方程以输入电压u的大小表示为: 式中,FAM / AM是AM / AM转换的输出电压与输入电压的关系,而FAM

太阳帅帅的博客 2081

python编程 input输入函数

本章将会讲解输入与输出中的 input()输入函数。

yj11290301的博客 6101

别再手动巡检了!用Zabbix 5.0 + SNMPv2自动监控华为S系列交换机(附完整命令集)

本文详细介绍了如何利用Zabbix 5.0与SNMPv2实现华为S系列交换机的自动化监控,告别低效的手动巡检。通过配置SNMPv2c安全基线、核心功能启用及Zabbix Server端深度配置,构建7×24小时监控体系,实时预警接口状态、流量波动等关键指标,大幅提升运维效率与故障响应速度。

weixin_30940783的博客 630

基于Matlab的MIMO通信系统仿真_Simulink实现

瑞利衰落信道中使用空时分组码的BPSK调制的BER 1、2发1收 参数设置: 双极性信号元+1和-1,每符号含1bit; 采样时间=符号时间=1s; 采用基于数据帧的仿真计算模式,每帧中有2个采样值; 仿真时间=出现100个误码后停止仿真; 随机整数种子=22; Jakes衰落模型中每个信道上的多普勒频移=0.01Hz; 输人信号功率=2W; Alamouti码:两根发送天线,一根接收天线(分集阶= 2); 平均信道信噪比= 18dB; 仿真得出的误码率统计BER =0. 00017. 2、2发

太阳帅帅的博客 9688

Python中使用input()无输入

Python中使用input()无输入 sublime Text编译器因页面美观,插件众多,功能强大深受编程爱好者的青睐。然而在编程中由于插件忘记安装导致程序运行失败,使人颇为烦恼。 问题描述: 在sublime Text编译器中使用input()输入函数,发现数据没有输入。代码如下图所示: a=int(input('请输入一个数:')) print(a) #控制台输入后没有输出: 请输入一个数:3 问题原因: 这种情况是因为没有安装SublimeREPL插件。 解决方法: 安装SublimeREPL

weixin_43982422的博客 9270

Hopfield神经网络(HNN)详解

Hopfield神经网络是一种比较特殊的网络,它不像一般的神经网络那样有输入层和输出层,并且通过训练来改变神经网络中的参数,最终实现预测、识别等功能。Hopfield网络只有一群神经元节点,所有节点之间相互连接,形式如下: 虽然有些文章会画出像深度神经网络那样有输入输出的图,并且输出后又返回输入,但本质上就是多个节点之间的全连接,也就是上面的图形。Hopfield神经网络主要有两个应用:一是起到类似储存器的作用,也就是我们把多个序列或图片输入这个网络,最终这个网络会以神经元之间连接权重的形式储存这

weixin_60737527的博客 4万+

python中使用input输入数据

python中使用input输入数据

niudunl的博客 2428

HDMI2.1接口保护指南:从浪涌损坏案例看RK3588板子的ESD设计要点

本文深入探讨了HDMI2.1接口在RK3588板子上的ESD防护设计要点,通过真实案例分析了浪涌损坏的原因及解决方案。重点介绍了TMDS信号链路的四级防护体系、TVS管选型误区以及连接器与PCB的协同设计策略,帮助工程师有效避免静电放电导致的HDMI无输出故障。

weixin_29305337的博客 449

Unity零基础到入门 ☀️| 轻松学会 Unity界面布局和简单实例——入门级!(^_−)☆

入门级Unity知识,一起加油呀!

努力前行,总会成为自己心中的那道光 1万+

HTML第四章 input新表单元素(10个,附带详细代码)

1. 数字控件 2. 颜色控件 3. 日期控件 4. 月份控件 5. 星期控件 6. 邮箱控件 7.搜索控件 8. URL控件 9. 电话号码控件 10. 范围控件

a2499797637的博客 1708

【MATLAB代码】基于水声通信(ACOMMS)下的到达时间差(TDOA)定位的AUV自主导航例程,附完整代码

水下AUV导航系统仿真研究 本研究基于到达时间差(TDOA)技术实现了水下自主航行器(AUV)的三维导航仿真系统。系统采用四个声学信标作为定位基准,通过TDOA测量数据迭代求解AUV位置。仿真结果表明: 导航性能:系统能够有效跟踪AUV从起点(30,30,-20)到目标点(70,70,-20)的航行轨迹,定位误差保持在合理范围内。 误差分析:定位误差变化曲线显示系统具有稳定的定位精度,平均误差为0.5米左右。 技术特点:采用两步最小二乘迭代算法求解非线性TDOA方程,提高了定位精度和计算效率。 该仿真系统为

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 323

python input函数无法输入字符串_Python手把手教程之用户输入input函数

函数input()函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。 例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ")print(message)复制代码函数input()接...

weixin_28704675的博客 2657

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

python函数定义input_Python手把手教程之用户输入input函数

函数input()函数 input() 让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。 例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ")print(message)复制代码函数 input...

weixin_31061699的博客 1123

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【Python 1-12】Python手把手教程之——用户输入input函数

函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。

弗拉德的技术博客 1029

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

pythoninput程序怎么编写_Python手把手教程之用户输入input函数

函数input()函数 input() 让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。 例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ")print(message)复制代码函数 input...

weixin_39931101的博客 1448

python 输入数字 函数_【Python 1-12】Python手把手教程之——用户输入input函数

作者 | 弗拉德来源 | 弗拉德(公众号:fulade_me)函数input()函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ...

weixin_39770626的博客 998

python2 input函数实现_【Python 1-12】Python手把手教程之——用户输入input函数

作者 | 弗拉德来源 | 弗拉德函数input()函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ")print(message...

weixin_34365042的博客 492

python 限定输入1-12_【Python 1-12】Python手把手教程之——用户输入input函数

作者 | 弗拉德来源 | 弗拉德函数input()函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ")print(message...

weixin_36013931的博客 969

pythoninput程序怎么编写_【Python 1-12】Python手把手教程之——用户输入input函数

作者 | 弗拉德来源 | 弗拉德(公众号:fulade_me)函数input()函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。例如,下面的程序让用户输入一些文本,再将这些文本呈现给用户:message = input("Tell me something, and I will repeat it back to you: ...

weixin_39607423的博客 222

python如何判断用户输入回车键?--关于input()函数的前世今生

前言 最近在写代码的时候,需要判断一下用户是不是敲了回车键,于是写出了这样的代码: if input('输入回车键进入程序') == '\n': print('开始程序。') 当时的目的是为了用户不输入任何内容,只敲回车键,无奈,print('开始程序。')语句永远也无法执行… 其实上面犯的错误是挺低级的,正确的代码应该是: if input('输入回车键进入程序') == '': print('开始程序。') 把== '\n'换成 == ''即可。 既然都说到这了,那就一起看看 inp

FujLiny的博客 2万+
上一篇: 学习Python之数据类型
下一篇: 对着爬虫网页HTML学习Python正则表达式re
pythonputao
博客等级 码龄6年 60粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值