Python 读取用户指令和格式化打印实现解析

一、读取用户指令

当你的程序要接收用户输入的指令时,可以用input函数:

name = input("请输入你的名字:")
print("Hi " + name)

Python 读取用户指令和格式化打印实现解析

程序中只要有input函数就会等待用户输入完并按回车键之后才会继续往下执行代码

注:input()函数接收得到的值只是字符串,即使你输入的是数字或者其他数据类型的值,它也会把数字按照字符串处理,即接收得到值只会字符串。

二、格式化打印

假设现在需要打印出以下格式的内容,该怎么实现呢?

------------ Infomation of Kwan ------------
Name  : Kwan
Age   : 21
Sex   : male
Job   : Python
----------------- End ----------------

你会发现,如果用字符串的拼接方法很难实现这种格式的输出,而且如果是用户自己输入对应信息的话,要更改其中的内容也很不方便。

Python提供了一种很实用的方法来解决这一问题,只需要把要打印的内容的格式先准备好,由于里面的信息是需要用户自己输入的,因此可以先放置占位符,再把字符串里的占位符与外部的变量做个映射关系就好了。

name = input("请输入姓名:")
age = input("请输入年龄:")
sex = input("请输入性别:")
job = input("请输入工作:")
info = '''
------------ Infomation of Kwan ------------
Name  : %s
Age   : %s
Sex   : %s
Job   : %s
----------------- End ----------------
''' % (name, age, sex, job)  # 要按照对应的顺序放置参数
print(info)

Python 读取用户指令和格式化打印实现解析

%s代表的就是字符串的占位符,除此之外,还有%d,是数字的占位符,%f是浮点数占位符,如果把上面的例子中的Age处用%d的话,那就需要将age变量先转成数字类型才能用,因为age通过input接收到的数字是字符串。

Python 读取用户指令和格式化打印实现解析

从上图可看出,输入数字得到的却是str类型,即字符串。

注:input接收的所有输入的内容都是字符串格式

可以使用数据类型的转换来处理这一问题

age = int (input("请输入年龄:")) # 一定要要纯数字的字符串才能使用int方法转换
age_int = 21
age_str = str(age_int) # 数字也可转换成字符串

相关推荐