让用户输入信息

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

当然可以使用图形界面,但是等等……

图形界面的开发需要更多的基础知识,我们先学习如何在终端上,让用户用键盘输入信息。

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

简单说,就是命令行窗口。就是这个

image

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

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

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

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

input 函数的参数 是 让用户输入时之前,显示的提示信息

比如

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

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

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

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

输入薪资数字后,用户敲一个回车符,结束输入。

解释器就继续执行下面的代码 print(salary)




另外一个要注意的是,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))

上一页 下一页