字符串的格式化输出的小实验
输入用户的姓名,年龄,职业,薪水。并在输入薪水的时候判断是否符合数字规范,否则退出程序。再以男性的退休标准输入还有多少年退休。最后将输入信息以格式化形式打印出来
效果展示
![效果展示图](https://i-blog.csdnimg.cn/blog_migrate/ec036b942240e406e4a7ba15dff33774.png)
name = input('Name:')
age = int(input('Age:'))
job = input('Job:')
salary = input('Salary:')
if salary.isdigit(): #判断是否像数字
salary = int(salary)
else:
exit('must input digit') #退程序
msg =
'''-----info of %s--------
Name: %s
Age : %s
Job : %s
Salary:%d
You will be retired in %d years
---------end-----------
''' %(name,name,age,job,salary,65-age)
print(msg)
拓展:假如我们在格式化输出时遇到了需要输出百分之多少该怎么办呢?
在python中正常输出百分号时可以只用一个(%),但遇到格式化输出时需要用两个百分号(%%)
举个栗子吧: 假如我们能活到100岁
now_age = 20
print(' 我现在%d岁,已经度过一生的%%20了 ' %(now_age))
字符串的格式化的另外两种方式
(1)用字符串的format()指定变量传参进去
st = 'hello kitty {name} is {age}'
st1 = st.format(name = 'zhw', age = '20' )
print( st1 )
(2)用format_map() 以字典形式传参
st = 'hello kitty {name} is {age}'
st2 = st.format_map({'name' : 'zhw' , 'age' : 20})
print( st2 )
两种方法的age 可以用字符串形式,也可以用整型数字形式。