目录
input()函数
1.input()函数的使用
2.input()函数结果的赋值
3.input()函数的数据类型
4.input()函数结果的强制转换
input()函数知识点总结
input()函数
在Python中,input()函数是一种与用户交互的简洁而强大的方式。通过input()函数,我们可以接收用户的输入,实现各种有趣的功能。
1.input()函数的使用
首先,让我们通过一段代码,来看一看input()函数是如何使用的:
input("请输入您的姓名:")
input()函数是输入函数。就上面例子来讲,它需要你输入针对括号内'请输入您的姓名:'的答案。
所以,当你在函数的括号内写出问题时,input()函数会将此问题原样显示在屏幕上,并在终端区域等待你针对此问题的回答。
输入答案按回车键后,是不是除了自己输入的信息,其他什么都没有?但是程序又没有报错,这是为什么呢?我们输入的回答并没有丢失,它被计算机储存在了程序中。
怎么让其结果显示出来,这就涉及到了input()函数的第二个知识点——函数结果的赋值。
2.input()函数结果的赋值
首先,我们可以对变量进行赋值,这样当我们想提取数据时,只要直接打印变量名,就能唤醒程序对数据的记忆。
这个赋值逻辑,在input()函数中也是行得通的。我们也可以通过赋值,达到随时提取输入结果的目的。但是在逻辑层面,我们需要拐一个弯。
比如,以我们下面这串代码为例:
name = input('请输入您的名字:')
#函数赋值
虽然看上去像是给input()函数赋值,但实际上,我们是将input()函数的执行结果(收集的信息)赋值给变量name。
通俗来讲,我们放进name这个盒子里的东西,不是input()函数中提的问题,而是我们通过input()函数收集到的别人的答案。这样,不管你在终端输入的内容是什么,不管你的回答改变多少次。只要是对input()函数所提问题的回答,都会被存储在变量中。等待你打印变量时,将回答提取出来,展示在显示屏上。而这些展示在终端的信息/回答/数据,在代码世界,我们可以称其为输入值——我们输入给函数的内容。
代码如下(示例):
name = input('请输入您的名字:')
#函数赋值
print(name+",欢迎来到十大大美之城之一厦门")
#打印输入的内容
运行结果如下:
请输入你的名字:晓寒
晓寒,欢迎来到十大大美之城之一厦门
这里有一个重点,在我们理解代码时,脑中的思维顺序是先搜集信息,再把input()函数的结果赋给变量。
与判断条件组合:
name = input('请输入您的名字:')
#变量赋值
print(name+",欢迎来到十大大美之城之一厦门")
#打印输入的内容
print("您是来厦门做什么?\n 1:旅游 \n 2:工作")
#打印问题
objective = input("请输入数字:")
#变量赋值
if objective == '1':
#条件判断:条件1
print('祝您在厦门有个愉快的假期!')
#条件1的结果
else:
#条件判断:其他条件
print("欢迎您来厦门就要,祝你工作愉快!")
#其他条件的结果
<小知识:\n:换行>
从思维角度出发,简单来讲就是:我给你两个选择,你从中挑一个,然后我给你显示对应的结果。
所以,代码的第一步就是赋值,并通过input()函数提问。第二步,我们要根据回答进行条件判断:如果回答是1,就显示条件1的结果;如果选了其他选项,则显示其他条件的结果。
发现没有,上面代码中为什么if条件下的变量objective是字符串'1'呢?我们接着看。
3.input()函数的数据类型
对于input()函数来说,不管我们输入的回答是什么,不管你输入的是整数1234,还是字符串『隐形斗篷是我最想拥有的魔法』,input()函数的输入值(搜集到的回答),永远会被【强制性】地转换为【字符串】类型。(Python3固定规则)
age = input('请输入你的年龄:')
print(type(age))
运行结果如下:
请输入你的年龄:35
<class 'str'>
不管我们输入的是什么数字,都会被强制转换成字符串;所以,不管我们在终端区域输入什么,input()函数的输入值一定是【字符串】。
由于我们用赋值运算符【=】把input()函数的字符串结果,赋给了变量age,所以这个变量也一定是字符串类型。
我们在看一段代码,看有什么不同:
age = 35
choice = int(input('请你猜一下晓寒的年龄:'))
if choice == age:
print('猜对惹~你好厉害! ヽ✿゜▽゜)ノ~~~')
elif choice < age:
print('晓寒的提示:你猜小了(;´д`)ゞ。。。。')
else:
print('晓寒的提示:乃猜大了惹(>﹏<)~~')
看到没有,第二行代码用到了int(),我们接下来看这是为什么?
4.input()函数结果的强制转换
input()函数的输入值在某些情况下,是可以变为整数的,这里我们就用到了int()。
int()在前面就学习到的知识点强制类型转换,可以将字符串强制性地转换为整数。
choice = int(input('请你猜一下晓寒的年龄:'))
#将输入值强制转换为整数,并赋值给变量choice
这串代码看起来像是把input()函数整个强制转换了,可实际上,我们是将input()函数取得的结果,进行强制转换,并将强制转换的结果赋值存在名为choice的变量盒里。这样,就算if条件是整数,程序也可以准确运行。所以,前面的代码我们就看得明白为什么要加int()。
我们再看一段int()运用的代码:
money = int(input('你一个月工资多少钱?'))
#将输入的工资数(字符串),强制转换为整数
if money >= 10000:
#当工资数(整数)大于等于10000(整数)时
print('土豪我们做朋友吧!')
#打印if条件下的结果
elif 5000 < money < 10000:
#当工资数(整数)大于5000(整数)小于10000(整数)时
print('我们都是搬砖族。。。')
#打印elif条件下的结果
else:
#当工资数(整数)小于等于5000(整数)时
print('我负责赚钱养家,你负责貌美如花~')
#打印else条件下的结果