【python系统学习05】input函数——实现人机交互
xing.org1^ 人气:2input函数
目录
- input用途
- 语法
- 示例
- 参数
- 返回值
- 返回值数据类型转换
- 容错处理
- 动手吧
input用途
实现人机交互:
1、你提出问题打印在屏幕上,
2、运行程序的人再输入回答。
3、按下回车,程序得到收集来的回答
4、之后,逻辑向下继续运行。
我们写的程可以实现根据他输入的回答进行不同的逻辑走向。
语法
示例
result = input('你爱我吗?请输入:')
if result == '不':
print('哼!你个大猪蹄子!')
else:
print('me too!!!'))
# 拿着搜集到的结果数据“result”的值来处理我们的程序,根据result的值不同,逻辑走向也就不同。
你提出的问题就是小括号“()”里边的那段字符串。result接受的就是运行的人输入的回答。运行的人按下回车,流程向下继续走。
参数
是一句话,只要填写你要询问客户的问题或你想输入、表达出来的任何数据,都行。且任何数据类型的皆可。
比如下边几个不同参数的示例:
a、字符串类型的参数
result = input('你爱我吗?请输入:')
# 运行时会打印:你爱我吗?请输入:
b、数字类型 参数
result = input(520)
# 运行时会打印:520
c、布尔类型 参数
result = input(True)
# 运行时会打印:True
d、甚至复杂类型(日后要整理的列表)参数都可以!
result = input([1,2,3])
# 运行时会打印:[1,2,3]
返回值
1、正常情况下
返回的就是用户输入的内容。
BUT⚠️, input函数的返回值,一定是字符串格式的。
也就意味着result变量肯定是字符串类型的数据。
result = input('你爱我吗?请输入:')
print(type(result)) # <class 'str'>
控制台交流如下:
“你爱我吗?请输入:”
此时我输入了123,还是纯数字键盘输入的123喔。
然后观察print的result类型,发现是<class 'str'>
,字符串格式。
2、非正常情况下
那么,我用户不回答,直接回车跳过你这个问题呢?返回值是啥?看图说话:
可以看到图中最后一行打印的依旧是<class 'str'>
,字符串格式。说明用户不输入,result接收的、或者说input返回的值是一个字符串形式的空串。
至于函数相关内容。我学过js接受起来很方便。可能零基础看起来就不爽了。
什么是参数、什么是返回值。。。心里一千个草泥马沸腾。
这个也按下不表,日后详谈。
但是说回正题。我们平时写逻辑,得把用户输入的可能性都考虑进去。也就是result如果不符合我们期望的情况,都考虑进去。
比如我上例中,result只要不是“不”字,就都走到else的情况了。
返回值数据类型转换
上边强调了好几遍,input函数赋值给变量后,变量肯定是字符串格式。
马上要过年了,过年肯定要见你的七大姑八大姨吧!
那么假如我们对input有以下使用场景呢:
age = input('石头,你今年多大啦!')
if age > 24:
marryBu = input('哎呀!那你有对象了吗?打算啥时候结婚啊!')
elif age < 24:
whereWork = input('工作啦!那你年薪多少啊现在!')
else:
print('哎吆,24不小了!我儿子24岁那年,他儿子都出生啦!')
print('允许这里有个白眼!
加载全部内容
- 猜你喜欢
- 用户评论