Python之读取用户指令和格式化打印
一、读取用户指令
当你的程序要接收用户输入的指令时,可以用input
函数:
name = input("请输入你的名字:")
print("Hi " + name)
程序中只要有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)
%s
代表的就是字符串的占位符,除此之外,还有%d
,是数字的占位符,%f
是浮点数占位符,如果把上面的例子中的Age处用%d的话,那就需要将age变量先转成数字类型才能用,因为age通过input接收到的数字是字符串。
从上图可看出,输入数字得到的却是str类型,即字符串。
注:input接收的所有输入的内容都是字符串格式
可以使用数据类型的转换来处理这一问题
age = int (input("请输入年龄:")) # 一定要要纯数字的字符串才能使用int方法转换
age_int = 21
age_str = str(age_int) # 数字也可转换成字符串