input()函数是Python提供的一个内置函数,用于读取用户从键盘中输入的数据。
input()函数从键盘中读取的数据是字符串的形式,在使用过程中可以用变量来接收它,根据实际使用目的,可以使用类型转换函数将其转换成对应的数据类型。
当程序运行到input()函数时,会等待用户输入相关的数据,用户输入完并按下回车键后,input()函数才会读取用户输入的数据。
在input函数执行过程中,如果遇到EOF则会产生一个EOFError异常,程序终止运行。
input()函数的语法如下:
input([prompt])
prompt是一个可选参数,该参数是在用户输入数据之前先在控制台打印一个prompt指定的字符串文本,如输入提示文本。该函数在运行时没有任何输入提示,因此在用户输入数据之前,使用该参数给出必要的输入提示,避免用户困惑。
下面给出几个使用的例子。
>>> input()
武林网VEVB
'武林网VEVB'
>>> input()
12.3
'12.3'
>>> s = input()
www.VeVb.com
>>> s
'www.VeVb.com'
>>> v1 = input('请输入一个数:')
请输入一个数:13
>>> v1
'13'
在Python3.8.2IDLE中运行的情况如下图所示:
从上面的例子中,我们可以看出,无论用户输入什么类型的数据,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中运行的情况如下图所示:
从上面的讲解可以知道,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中的运行情况如下图所示:
当用户输入EOF时,input()函数会给出EOFError的错误并终止程序的运行。
下面这段程序用于演示input()函数读取用户输入EOF(ctrl + D)时的情景:
v1 = input("请输入一个整数:")
print(f"你输入的整数为:{v1}")
执行和输出情况:
请输入一个整数:^D
上面结果中“^D”表示用户按下了“CTRL+D”。
Traceback (most recent call last):
File "D:/01Lesson/PY/input02.py", line 1, in <module>
v1 = input("请输入一个整数:")
EOFError: EOF when reading a line
在IDLE 3.8.2中运行的结果如下图所示:
本文(完)
新闻热点
疑难解答