python格式化输出的三种方式%,format,f-strings


%的用法

name = '悟空'
age = 700
salary = 100.4589

#字符串输出:
print('请输入姓名:%s'%(name))  # 请输入姓名:悟空
#整数输出:
print('请输入你的年龄:%d'%age)  #请输入你的年龄:700
#浮点小数输出:
print('请输出你的工资:%f'%salary) #请输出你的工资:100.458900
#浮点小数输出,指定小数位
print('请输出你的工资:%.2f'%salary)  #请输出你的工资:100.46
#占位符,数字的大小代表了占位符的长度
print('name:%20sage:%8dsalary:%8f'%(name,age,salary))#name:                  悟空age:     700salary:100.458900
#左对齐占位符,加上-号,让占位符靠左显示
print('name:%-10sage:%-8dsalary:%-8f'%(name,age,salary)) #name:悟空        age:700     salary:100.458900

format的使用

#format  位置输出,位置必须一一对应,如果位置不一样,则会匹配错位
print('name:{},age:{},salary:{}'.format(name,age,salary))#name:悟空,age:700.01,salary:100.4589
#不一一对应的输出结果将不是我们想要的结果
print('name:{},age:{},salary:{}'.format(age,name,salary))#name:700.01,age:悟空,salary:100.4589
#通过位置参数输出
print('name:{0},age:{1},age2:{1}'.format(name,age))#name:悟空,age:700.01,age2:700.01
#通过参数匹配
print('name:{name},age:{age},age2:{age}'.format(name=name,age=age))#name:悟空,age:700.01,age2:700.01

# #通过列表匹配,这里可以通过给一个值然后通过索引去取值,也可以通过位置参数输出
li = ['悟空',700.01,100.4589]
print('name:{li[0]},age:{li[1]}'.format(li = li))#name:悟空,age:700.01
print('name:{0[0]},age:{0[1]}'.format(li))#name:悟空,age:700.01
#通过键匹配值这里需要通过一个变量names相当于字典的名称当让也可以叫dict
dict ={
    'name' : '悟空',
    'age' : 700.01,
    'salary' : 100.4589
}
print('name:{names[name]},age:{names[age]},salary:{names[salary]}'.format(names = dict))#name:悟空,age:700.01,salary:100.4589

F-strings的用法

#f-sttings
#直接输出变量
print(f'name:{name},age:{age},salary:{salary}')#name:悟空,age:700.01,salary:100.4589
#直接进行变量运算
print(f'{salary+age}')#800.4689
#直接调用函数
def func(age):
    return(age)

print(f'age:{func(28)}')#age:28
#直接调用内置函数
name2 = 'yyx'
print(f'name:{name2.upper()}')#name:YYX


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM