python字符串格式化问题总结(%,format)

2023-02-03 07:56:12

python字符串处理,专栏总目录

1.python字符串格式化

2.python字符编码

3.python字符串常用函数

 

python字符串格式化有多找方法,进行常用方法整理。

1、%

%运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。用%%来表示一个%。

转换说明符

说明

%d,%i

转换为带符号的十进制形式的整数

%o

转换为带符号的八进制形式的整数

%x,%X

转换为带符号的十六进制形式的整数

%e

转化为科学计数法表示的浮点数(e 小写)

%E

转化为科学计数法表示的浮点数(E 大写)

%f,%F

转化为十进制形式的浮点数

%g

智能选择使用 %f 或 %e 格式

%G

智能选择使用 %F 或 %E 格式

%c

格式化字符及其 ASCII 码

%r

使用 repr() 将变量或表达式转换为字符串

%s

使用 str() 将变量或表达式转换为字符串

其中,整数、浮点数可以指定是否补0和整数与小数的位数,如:

1.1、数字格式化

数字 格式 输出 描述

3.1415926 {:.2f} 3.14 保留小数点后两位
3.1415926 {:+.2f} +3.14 带符号保留小数点后两位
-1 {:+.2f} -1.00 带符号保留小数点后两位
2.71828 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补零 (填充左边, 宽度为2)
5 {:x<4d} 5xxx 数字补x (填充右边, 宽度为4)
10 {:x<4d} 10xx 数字补x (填充右边, 宽度为4)
1000000 {:,} 1,000,000 以逗号分隔的数字格式
0.25 {:.2%} 25.00% 百分比格式
1000000000 {:.2e} 1.00e+09 指数记法
13 {:10d} 13 右对齐 (默认, 宽度为10)
13 {:<10d} 13 左对齐 (宽度为10)
13 {:^10d} 13 中间对齐 (宽度为10)

1.2、进制转换

11 '{:b}'.format(11) 1011 二进制
11 '{:d}'.format(11) 11 十进制
11 '{:o}'.format(11) 13 八进制
11 '{:x}'.format(11) b 十六进制
11 '{:#x}'.format(11) 0xb 十六进制
11 '{:#X}'.format(11) 0XB 十六进制

^, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

+ 表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格。

b、d、o、x 分别是二进制、十进制、八进制、十六进制。

1.3、输出大括号

print("{} {{0}}".format("opcai_linux"))

opcai_linux {0}

2、format()

format()方法,基本使用格式是:

 <模板字符串>.format(<逗号分隔的参数>)

2.1、位置参数

它会用传入的参数依次替换字符串内的占位符{0}、{1}……,占位符参数默认从0 开始编号,若顺序一致,可省略占位符。

2.2、关键字参数

使用关键字参数:

"{a} love {b}{c}".format(a="I", b="ice",c="cream")

位置参数和关键字参数可以结合使用,如:

"{0} love {b}{c}".format("I", b="ice",c="cream")

但是注意位置参数必须要在关键字参数之前,注意点与python语法一致。

使用列表格式化:

person = {"name":"opcai","age":20}
print("My name is {name} . I am {age} years old .".format(**person))
My name is opcai . I am 20 years old .
  • 作者:alex1801
  • 原文链接:https://blog.csdn.net/weixin_34910922/article/details/106677370
    更新时间:2023-02-03 07:56:12