Python格式化输出的三种方法(format,f前缀,%s)

2023年2月11日13:25:58

Python格式化的三种方法

格式化输出Python中常用的操作,3.6以后有三种方法:

  1. f-string方法(强烈推荐)
  2. str.format()方法
  3. %s方法

简洁万能的f-string方法

3.6以后的版本强烈推荐这种方法

  • 代码清晰易读
  • {}中支持代码
  • 支持格式控制
  • list和tuple型可以随意调整输出顺序
name_str="f-string"
name_lst=["f-string","f-string2"]
name_dic={"id":1,"name":"f-string2","height":1.75}
print(f'Hello,{name_str}')
print(f'Hello,{name_lst}')
print(f'Hello,{name_dic}')
print(f'支持代码:{name_lst[1]}') # 支持代码
print(f'整数型无格式控制:{name_dic["id"]}')# 整数型无格式控制
print(f'整数型有格式控制:{name_dic["id"]:5}') # 整数型有格式控制(宽度5)
print(f'字符串型无格式控制:{name_str}')# 字符串型无格式控制
print(f'字符串型有格式控制:{name_str:>10}') # 字符串型有格式控制(右对齐,长度10)
print(f'浮点型无格式控制:{name_dic["height"]}')# 浮点型无格式控制
print(f'浮点型有格式控制:{name_dic["height"]:.3f}') # 浮点型有格式(精度为3位)
print(f'list可以调整输出顺序{name_lst[1]}  {name_lst[0]}')
Hello,f-string
Hello,['f-string', 'f-string2']
Hello,{'id': 1, 'name': 'f-string2', 'height': 1.75}
支持代码:f-string2
整数型无格式控制:1
整数型有格式控制:    1
字符串型无格式控制:f-string
字符串型有格式控制:  f-string
浮点型无格式控制:1.75
浮点型有格式控制:1.750
list可以调整输出顺序f-string2  f-string

str.format()方法

  • 支持格式控制
  • list和tuple型无法调整输出顺序
  • 可读性稍差
name_str="f-string"
name_lst=["f-string","f-string2"]
name_dic={"id":1,"name":"f-string2","height":1.75}
print('Hello {}'.format(name_str) )
print('列表型和tuple型无法调整输出顺序{} {}'.format(*name_lst))
print('Hello {id:5}'.format(**name_dic) )#支持格式控制(宽度5),其他的不再列举
Hello f-string
列表型和tuple型无法调整输出顺序f-string f-string2
Hello     1

%s型

  • 支持格式控制
  • 无法调整list和tuple型输出顺序
  • 可读性差
name_str="f-string"
name_lst=["f-string","f-string2"]
name_dic={"id":1,"name":"f-string2","height":1.75}
print('可格式控制:%10s'% name_str)
print('列表型和tuple型无法调整输出顺序%s %s' %(tuple(name_lst)))
print("dict型输出复杂%(name)s" %(name_dic))
可格式控制:  f-string
列表型和tuple型无法调整输出顺序f-string f-string2
dict型输出复杂f-string2

综上所述,3.6以上首推f-string格式,Python3低于3.6推荐str.format,Python2只能选择%s

  • 作者:小白的畅想
  • 原文链接:https://blog.csdn.net/qq_25885951/article/details/115312783
    更新时间:2023年2月11日13:25:58 ,共 1637 字。