知行编程网知行编程网  2022-01-16 11:23 知行编程网 隐藏边栏 |   抢沙发  13 
文章评分 0 次,平均分 0.0

format是字符串内嵌的一个方法,用于格式化字符串。以大括号{}来标明被替换的字符串,一定程度上与%目的一致。但在某些方面更加的方便

1、基本用法

1、按照{}的顺序依次匹配括号中的值

s1 = "{} is a {}".format('Tom')
# 抛出异常, Replacement index 1 out of range for positional args tuple
print(s1)

2、通过索引的方式去匹配参数

这里需要注意的是,索引从0开始计算。

s1 = "{1} is a {2}".format('Tom''Lily''Girl')
print(s1) # Lily is a Girl

字符串中索引的顺序可以打乱,并不影响匹配。


3、通过参数名来匹配参数


同理,如果参数已经确定,可以直接利用{}进行格式化引用。


4、混搭使用

可以通过索引,参数名来混搭进行匹配。


需要注意的是,命名参数必须写道最后。负责会编译报错!


另外,不可以索引和默认格式化混合使用。

, )
print(s)

s1 = "{} is a {1}".format('Boy''Tom', )
print(s1)

以上两种写法均报异常。


2、进阶用法

1、支持对参数部分引用

可以通过索引对参数的部分进行取值。如下:s[0] = w。


print(s)

2、数字的处理

普通的直接匹配数字没什么好说的,与基础部分的字符串匹配一样。


如何使用format 保留两位小数呢?需要使用:.2f,在用%进行格式化时我们使用的是%:.2f

s1 = 'π is %.2f'3.1415926
print(s1) # π is 3.14

同时这种方法还可以用于字符串截取,不过数字后面就不能加f了。


给数字加千位符


将数字转换成二进制


将数字转换成八进制


将数字转换成十六进制


总结如下

  • b: 输出整数的二进制方式;
  • c: 输出整数对应的 Unicode 字符;
  • d: 输出整数的十进制方式;
  • o: 输出整数的八进制方式;
  • x: 输出整数的小写十六进制方式;
  • X: 输出整数的大写十六进制方式;

3、格式处理

通过:+数字指定转换后的字符串长度,不足的部分用空格补充


4、字符的填充

可通过:符号^数字进行字符串的填充。其中数字为填充后的字符串总长度。

s = "{:-^20}".format('123456')
print(s) # -------123456-------

如果数字小于字符串的长度,则不进行填充操作。


5、list、tuple的拆分

在format格式化时,可使用* 或者 ** 进行对list、tuple拆分。


print(s)

print(s)

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享