字符串格式化
Python的字符串格式化有两种方式: 百分号方式、format方式
在两种字符串格式化中%为先前的字符串格式方式,后来python为了针对字符串格式化有更多的操作,python引入了format字符串格式化的方式。现在两种字符串格式化方式并存,目前使用format 字符串格式化方式较多,以后有可能format会代替%。
百分号方式
语法:
%[(name)][flags][width].[precision]typecode
- u [(name)] 可选,可用于选择指定的key
- u [flags] 可选,可供用于选择的值有:
- l + 右对齐;正数前加正好,负数前加负号;
- l - 左对齐;正数前无符号,负数前加负号
- l 空格 右对齐;正数前加空格,负数前加负号
- l 0 右对齐; 正数前无符号,负数前加负号;用0填充空白处
- u [width] 可选,占有宽度
- u .precision 可选,小数点后保留的位数
- u Typecode 必选
- l S.获取传入对象的_str_方法的返回值,并将其格式化到指定位置
- l r.获取传入对象的_repr_方法的返回值,并将其格式化到指定位置
- l c.整数: 将数字转换成器unicode对应的值,10进制范围为0<=i<=1114111(py27则支持0-255);字符:将字符添加到指定位置
- l o,将整数转换成 八 进制表示,并将其格式化到指定位置
- l x,将整数转换成十六进制表示,并将其格式化到指定位置
- l d,将整数、浮点数转换成 十 进制表示,并将其格式化到指定位置
- l e,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(小写e)
- l E,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(大写E)
- l f, 将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
- l F,同上
- l g,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e;)
- l G,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E;)
- l %,当字符串中存在格式化标志时,需要用 %%表示一个百分号
常用字符串格式化范例:
demo = "i am %s" % "jack" demo = "i am %s age %d" % ("jack", 18) demo = "i am %(name)s age %(age)d" % {"name": "jack", "age": 18} demo = "percent %.2f" % 99.97623 demo = "i am %(pp).2f" % {"pp": 123.425556, } demo = "i am %.2f %%" % {"pp": 123.425556, }
时间: 2024-10-05 11:57:44