跳转至

让用户输入信息

终端

想象一下,你如果要开发一个计算税后薪资的软件,需要用户输入员工的薪资,怎么做?

当然可以开发一个带图形界面的程序,但是图形界面的开发需要更多的基础知识,我们先学习如何在终端上,让用户用键盘输入信息。

可能你要问了,什么叫终端?

终端这个名词,历史悠久,感兴趣的同学可以参考这篇文档 终端

这里,我们可以先简单说,就是命令行窗口。就是这个

image

这个就是我们常说的终端窗口

输入输出

我们写的程序目前都是使用这个窗口 输出信息 ,和 输入信息

前面我们学过使用Python的内置函数 print 输出 信息到屏幕上。

那么,我们怎么让用户 输入 信息给程序呢?

这时我们需要使用另一个内置函数 input

比如

salary = input('请输入张三的薪资:')
print(salary)

input 函数里面的参数是个字符串, 它是 让用户输入之前,显示在屏幕上的提示信息

大家运行一下,就可以发现,

解释器在执行到第一行代码input处

会停止执行代码,等待用户输入员工的薪资。如果用户没有输入结束,就一直停止在这里,不会执行下面的代码。

输入薪资数字后,用户敲一个回车符,结束输入。 这时 input函数才会返回用户输入的内容,并继续执行下面的代码 print(salary)

input函数返回值是 用户输入的字符串,不包括最后的回车符。


要注意,input函数返回的用户输入的内容,都是 字符串

即使用户输入的是一个数字,返回的也是 一个 内容为数字 的 字符串

如果我们想根据用户输入的薪资计算出税后薪资(扣税15%),该怎么办?

能不能这样?

salary = input('请输入张三的薪资:')
print('税后薪资是:' + salary*75/100 )

运行一下,发现有错误

TypeError: unsupported operand type(s) for /: 'str' and 'int'

因为字符串 是不能 进行数学运算的

要解决这个问题,可以使用两个内置函数, int 和 str

int把字符串转化为对应的数字

int('1000')  返回的结果就是  数字 1000

str把数字转化为对应的字符串

str(1000)  返回的结果就是  字符串 '1000'

那么大家想想 ,我们该怎么做呢?

对了,可以这样

salary = input('请输入薪资:')

# 先将字符串转化为数字
intSalary = int(salary)  

# 计算出税后薪资
realSalary = intSalary*75/100  

# 再转化为字符串,方便下面的字符串拼接
realSalaryStr = str(realSalary)  

print('税后薪资是:' + realSalaryStr)

上面的代码可以将中间的语句合并到一个表达式str(int(salary)*75/100)里面

代码可以写成这样

salary = input('请输入张三的薪资:')

print('税后薪资是:' + str(int(salary)*75/100))

您需要高效学习,找工作? 点击咨询 报名实战班

点击查看学员就业情况

课后练习

去做练习