初识python - 格式化打印

现有一练习需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式

  

------------ info of Pang Hu -----------
Name : Pang Hu
Age : 22
job : Program
Hobbie: Music
------------- end -----------------

 

你怎么实现呢?你会发现,用字符拼接的方式还难实现这种格式的输出,所以一起来学一下新姿势

只需要把要打印的格式先准备好, 由于里面的 一些信息是需要用户输入的,你没办法预设知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系就好啦

  

name = input("Name:")
age = input("Age:")
job = input("Job:")
hobbie = input("Hobbie:")
info = '''
------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name
Name : %s #代表 name
Age : %s #代表 age
job : %s #代表 job
Hobbie: %s #代表 hobbie
------------- end -----------------
''' %(name,name,age,job,hobbie) # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来
print(info)

 

%s就是代表字符串占位符,除此之外,还有%d,是数字占位符,%f是浮点数占位符, 如果把上面的age后面的换成%d,就代表你必须只能输入数字啦

input接收的所有输入默认都是字符串格式!

要想程序不出错,那怎么办呢?简单,你可以把str转成int

  1. age = int( input("Age:") )
  2. print(type(age))

肯定没问题了。相反,能不能把数字转成字符串呢?必然可以,str( yourStr )

posted @ 2019-09-01 22:33  Kele胖虎  阅读(223)  评论(0编辑  收藏  举报