首页 > 数据库 > 数据库开发技术 > Python内置函数:input()

今天分享一下Python内置函数:input()
input(["prompt"])
查看该函数的定义说明,以Pycharm IDE工具为例,在代码编写区域输入:input() 然后把鼠标放在input函数名字上,稍等片刻,下面的浮动说明窗口就会出现:

该函数的功能就是:
从标准的输入设备读取一个字符串。
不能输入多行,因为新行会被截断并除掉
如果有提示语,提示语会被先打印出来并在输出端展示,等待用户输入
无提示语的input例子
# 无提示语的话,用户一脸懵逼要做什么
name = input()
print(name)
print(type(name))
'''运行结果:
C:\temp>python input_demo.py
你想让我输入什么? <--用户输入的字符串
你想让我输入什么? <--代码打印用户输入的字符串
'''
推荐用法
name = input("请输入你的名字:")
print(name)
'''运行结果:
C:\Python37\python.exe C:/temp/input_demo.py
请输入你的名字:肖恩 <--用户输入的字符串
肖恩 <--代码打印用户输入的字符串
'''
细心的同学已经发现了,input()这个函数说明里已经做了详细的说明,它从输入端读取的是一个字符串类型的数据。如果我们输入的是一个数字呢?它的类型还是字符串么?我们来看一下:
# 优化一下上面的代码:
# 1. 增加打印变量类型
# 2. 增加一个age变量,并用次变量接收用户输入的年龄信息
name = input("请输入你的名字:")
print(name)
print(type(name))
age = input("请输入你的年龄:")
print(age)
print(type(age))
'''运行结果:
请输入你的名字:肖恩
肖恩
<class 'str'>
请输入你的年龄:66
66
<class 'str'>
'''
可以看到,用户虽然输入了数字,但是在input()看来,它还是以字符的形式保存到了变量当中。那如何让它变成我们期望的数据类型呢?这里我们需要用到Python的强制数据类型转换。
string转int类型
这里我们想让年龄的数据类型为int,那上面的代码我们修改一下,变成这个样子:
name = input("请输入你的名字:")
print(name)
print(type(name))
#强制类型转换:将 str类型转换为 int类型
age = input("请输入你的年龄:")
age = int(age)
print(age)
print(type(age))
'''运行结果:
请输入你的名字:小明
小明
<class 'str'>
请输入你的年龄:10
10
<class 'int'>
'''
string转float类型
如果用户可以输入任意的数字:整数或者小数,那该如何强制转换?
最直接,最简单粗暴的方法就是:统一强制转换成float类型。代码如下:
number = input("请输入任意数字:")
print(number)
print(type(number))
number = float(number)
print(number)
print(type(number))
如果用户输入的是一个整数,运行结果如下:
请输入任意数字:527
527
<class 'str'>
527.0
<class 'float'>
如果用户输入的是一个小数,运行结果如下:
请输入任意数字:3.1415
3.1415
<class 'str'>
3.1415
<class 'float'>
那如果想让这个float类型的数据保留小数点后两位,该怎么操作呢?请参考另外一篇文章:Python格式化输出
原文作者:BPShare;如有侵权,请联系管理员删除。