大家好,欢迎来到 Crossin的编程教室 !
了解哪怕一点点 Python 基础的朋友应该都知道,Python 里有一个内置的输入函数:input
input 的作用
这个函数的作用很简单,就是从控制台获取用户的输入。
然而简单归简单,对于刚刚接触编程的人来说,很可能在这一步就卡住了。因为它牵涉到 2 个概念:什么是「控制台」,以及什么叫「用户的输入」。
所谓控制台,又叫命令行、终端,是与计算机系统或程序进行交互的界面。通常看到的样子是黑底白字,开头有当前目录名,后面一个光标不停跳动。
不同系统有不同的系统控制台,不同的Python开发工具也有自己的 Python 控制台。并且在系统控制台中,你可以通过 python 命令进入 Python 的控制台。所以这就有点让人晕了,导致经常有人会在系统控制台输入 Python 代码,或在 Python 控制台中执行系统命令(比如 pip)的,然后发现无法得到预期的效果。
对于 input 来说,找到控制台倒不是难事,因为你可以用 print 语句输出,或者给 input 增加提示语(稍后讲到),看到输出的内容在哪里,哪里就是我们提供输入的控制台。
而至于「用户的输入」,是一个看一遍演示视频就能明白的事。但若光凭文字讲解,不少人会产生误解。比如把想要输入的值写在了 input 后面的括号里,或者看见程序运行后卡住不动而不知道此时它正在等待你的输入。
使用 input
1. 程序运行到 input 语句时,会停止继续运行,等待用户输入。
2. 这时候使用程序的人需要在控制台跳动的光标处输入内容,然后按回车确认完成输入。
3. 用户输入的内容,会被 input 函数获取,并可以赋值给一个变量记录下来,供后续的代码使用
这就是一个 input 获取输入的流程。
提示语
至于 input 后面的括号里的内容,那是输入的“提示语”。
你可以什么都不给,如果给了,就会在等待输入之前输出在控制台,相当于做了一次 print。
为什么需要 input?
有人要问了:
需要什么值,直接赋值给变量不就好了,干嘛还要用 input?
直接赋值,是写代码的人在开发时就写死在代码里;
而 input 获取的是用户的输入,是在程序运行之后才知道是什么值,每次运行都可以不一样。
比如最简单的「hello world」程序,如果加上一个 input,让用户输入昵称,就可以让每个人得到不同的输出结果。
这样同一份代码,就可以满足不同的人。
软件的输入
为什么从没在其他软件中看过这种控制台的输入?
获取用户输入的途径有很多,比较常见的像输入框,按钮,甚至麦克风和摄像头,都是用户在向程序输入信息。
通过控制台输入,大概只有开发人员才会用到。
目前我们只是从最简单的方式开始学起。以后还可以编写更加人性化的输入。
输入的类型
input 得到的值都是字符串,即使你输入的是一个数字,或者一个计算式,它也会将其当做一个字符串来处理。
如果想当做数字来进行运算,需要进行类型转换,否则会报错。
这个问题在 Python 2 里有点不同,那时候有两个输入函数:input 和 raw_input。其中 input 得到的是数值本身,比如输入数字就是得到数字。
好在现在几乎不会有人再用 Python 2 进行学习,这个常让人混淆的坑几乎没人再踩了。
领取专属 10元无门槛券
私享最新 技术干货