Python format函数对字符串和数值进行格式化输出的定义方式

python中,字符串的格式化输出可以使用 format 函数,形如:

'{}'.format(string)

其中,string代表你要填充到 {} 中的字符串。
输出结果的格式的规定在 {} 中定义,如:

>>> string = 'python'
>>> '{:#^30}'.format(string)
'############python############'

其中:

  • “:” 是引导符号,表示要对填充的字符串进行以下规则的格式化,必填,其他均为选填。
  • "#"代表使用 # 对输出的结果进行填充。
  • "^"代表将 string 在输出的结果中居中。
  • "30"代表指定输出结果的宽度为30。

format 函数对字符串进行格式化输出的定义的结构如下:

  1. 填写引导符号":";
  2. 指定用于填充的单个字符,选填,默认为空格;
  3. 指定输入字符串在输出结果中对齐方式,选填,"^“为居中对齐,”<“为左对齐,”>"为右对齐,默认为左对齐;
  4. 指定输出结果的长度,选填,默认为输入字符串的长度;
  5. 指定输入字符串的最大长度,选填,以".长度"表示,如 “.10” 表示取输入字符串的前10个字符填入输出结果中,默认为输入字符串的长度。

以上内容需按顺序填写,虽然都是选填内容,但有些填写格式不支持,如只填写填充字符或只填写填充字符和输出长度而不指定对齐方式,需要自己进行尝试,发现正确的填写规则。

# 以下为不支持的规则定义示例
'{:#}'.format(string)  # 只填写填充字符
'{:#30}'.format(string)  # 只填写填充字符和输出长度而不指定对齐方式

对于输入多个字符串的,可以在 format 前面的字符串中输入多个 {},并在其中指定需要填入输入的第几个字符串以及相应的格式要求,然后在 format 的参数中填入所有字符串,如:

>>> '{0:#<5}, {1:$^4}, {0:@>3}, {2}'.format(1, 2, 3)
'1####, $2$$, @@1, 3'

format 函数不仅可以格式化输出字符串,还能以字符串的形式格式化输出数字,定义的结构与千米的定义类似:

  1. 填写引导符号 “:”;
  2. 指定用于填充的单个字符,选填,默认为空格;
  3. 指定输入字符串在输出结果中对齐方式,选填,"^“为居中对齐,”<“为左对齐,”>"为右对齐,默认为左对齐;
  4. 指定输出结果的长度,选填,默认为输入字符串的长度;
  5. 指定数字的千位分隔符,选填,无默认;
  6. 指定浮点数小数的精度,选填,以".精度"表示,如 “.2” 表示取小数点后2位,默认为输入数据的精度;
  7. 指定转换后的数值类型,选填,"b"为二进制类型,"c"为Unicode类型,"o"为八进制类型,"d"为十进制类型,"x"为十六进制类型,"e"为科学计数法表示,“f"为浮点数类型,”%"为百分数类型,默认为输入数据的类型。

以上内容需按顺序填写。

# 数值格式化输出示例
>>> '{0:b},{0:c},{0:d},{0:o},{0:x}'.format(65)
'1000001,A,65,101,41'
>>> '{0:,.3%}, {0:,.3e}, {0:,.3E}, {0:,.3f}'.format(1000)
'100,000.000%, 1.000e+03, 1.000E+03, 1,000.000'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值