首 页IT知识库收藏内容
当前位置:翔宇亭IT乐园IT知识库Python

Python中使用input函数让用户从键盘中输入数据

减小字体 增大字体 作者:本站  来源:本站整理  发布时间:2021-04-19 16:08:19

input()函数是Python提供的一个内置函数,用于读取用户从键盘中输入的数据。

input()函数从键盘中读取的数据是字符串的形式,在使用过程中可以用变量来接收它,根据实际使用目的,可以使用类型转换函数将其转换成对应的数据类型。

当程序运行到input()函数时,会等待用户输入相关的数据,用户输入完并按下回车键后,input()函数才会读取用户输入的数据。 

在input函数执行过程中,如果遇到EOF则会产生一个EOFError异常,程序终止运行。

一、基本语法

input()函数的语法如下:

input([prompt])

prompt是一个可选参数,该参数是在用户输入数据之前先在控制台打印一个prompt指定的字符串文本,如输入提示文本。该函数在运行时没有任何输入提示,因此在用户输入数据之前,使用该参数给出必要的输入提示,避免用户困惑。

二、input()函数使用举例

下面给出几个使用的例子。

>>> input()
翔宇亭IT乐园
'翔宇亭IT乐园'
>>> input()
12.3
'12.3'
>>> s = input()
www.biye5u.com
>>> s
'www.biye5u.com'
>>> v1 = input('请输入一个数:')
请输入一个数:13
>>> v1
'13'

在Python3.8.2IDLE中运行的情况如下图所示:

Python中input()函数的使用举例

从上面的例子中,我们可以看出,无论用户输入什么类型的数据,input函数都会将其转换成字符串类型进行处理。

下面的例子使用type()函数来验证一下:

>>> v1 = input("请输入一个字符串:")
请输入一个字符串:I Love China!
>>> print(f"你输入的字符串为:{v1},其类型为:{type(v1)}")
你输入的字符串为:I Love China!,其类型为:<class 'str'>
>>> v2 = input("请输入一个整数:")
请输入一个整数:1314
>>> print(f"你输入的整数为:{v2},其类型为:{type(v2)}")
你输入的整数为:1314,其类型为:<class 'str'>
>>>

上面的例子在IDLE 3.8.2中运行的情况如下图所示:

Python中演示input()函数读取的数据类型

三、使用input()函数得到数值型数据的方法

从上面的讲解可以知道,input()函数读取用户输入的数据都会转换为字符串,如果我们在程序中需要其它类型数据的话可以使用类型转换函数来完成。

下面这个例子通过比较用户输入的两个数大小来演示相关方法。

# 比较两个数字的大小
# 由用户输入两个数字n1和n2,程序按照已下格式输出
# n1 > n2 或 n1 < n2 或 n1 = n2


v1 = input("请输入第一个数:")
v2 = input("请输入第二个数:")

n1 = float(v1)
n2 = float(v2)

if n1 > n2:
    print(f"{n1} > {n2}")
elif n1 < n2:
    print(f"{n1} < {n2}")
else:
    print(f"{n1} = {n2}")

在IDLE 3.8.2中的运行情况如下图所示:

Python中比较用户输入的两个数大小

四、产生EOFError的例子

当用户输入EOF时,input()函数会给出EOFError的错误并终止程序的运行。

下面这段程序用于演示input()函数读取用户输入EOF(ctrl + D)时的情景:

v1 = input("请输入一个整数:")
print(f"你输入的整数为:{v1}")

执行和输出情况:

请输入一个整数:^D
Traceback (most recent call last):
  File "D:/01Lesson/PY/input02.py", line 1, in <module>
    v1 = input("请输入一个整数:")
EOFError: EOF when reading a line
上面结果中“^D”表示用户按下了“CTRL+D”。

在IDLE 3.8.2中运行的结果如下图所示:

input()函数读入EOF

本文(完)


如果你喜欢本站的文章,请收藏本站。转载分享请注明出处和本文链接地址。

微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
愿您的精彩评论引起共鸣,带来思考和价值。
用户名: 查看更多评论
分 值:100分 90分 80分 70分 60分 40分 20分
内 容:
验证码:
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2024 biye5u.com. All Rights Reserved.