python字符串格式化

Posted rons

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python字符串格式化相关的知识,希望对你有一定的参考价值。

%和转换符之间的修饰符

  • - ,左对齐标志,默认为右对齐
  • +,显示数值符号
  • 0,零填充
  • 一个指定最小宽度的数
  • .  一个小数点,后面跟位数(字符串最大个数,浮点之后的位数,整数最小位数
  • * 用于替换字段宽度
1 print(%*.*f % (10, 2, 3.14159))
2 print(%.4s, %.5d, %.3f % (hello, 16, 3.14159))
3 print(%(key)010d, %(name)10s % {key:123, name:Ron})
4 
5 #vars()函数技巧
6 name = Ron
7 age = 25
8 print(%(name)s is %(age)+d years old % vars())

高级字符串格式化s.format

  • {n} n为整数:被位置参数代替
  • {name}:被关键字参数代替
  • {{}}:输出{}
  • {name[n]}:序列查找
  • {name[key]}:字典查找
  • {name.attr}:属性查找
  • {place:format_spec}:指定格式
    • [fill[align][sign][0][width][.precision][type]]
    • <,^,>:左中右对齐

 

 1 print("{0},{1},{0}".format(hello, world))
 2 print("{name}, {age}".format(age=25, name=Ron))
 3 print({0}, {age}.format(hello, age=22))
 4 print({{hello}}, {}.format(123))
 5 print({name[1]}.format(name=[1,2,3]))
 6 print({name[key]}.format(name={key:hello}))
 7 print({0.__doc__}.format(str))
 8 print("{0.real} {0.imag}".format(3 + 4j))
 9 print("{name:>8},{age:*^8d}, {high:8.2f}".format(name=Ron, age=25, high=176.567))
10 
11 x = 42; y = 3.14159
12 print({0:010b}.format(x))
13 print({0:010x}.format(x))
14 print({0:+010.2f}.format(y))
15 print({0:<+10.2%}.format(y))
16 print({0:{width}.{pre}f}.format(y, width=10, pre=3))
17 print({0!r:^20}.format(Guido))

 

以上是关于python字符串格式化的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 格式(f-string)字符串中,!r 是啥意思? [复制]

python颜色压缩的结果颜色比保存颜色深

我应该如何使用 Outlook 发送代码片段?

Python代码阅读(第25篇):将多行字符串拆分成列表

如何在 Javadoc 中使用 @ 和 符号格式化代码片段?

为 Blogger 上的博客格式化代码片段 [关闭]