Python 字符串操作

1. 字符串操作

1.1 格式化字符串

(1) str.format() 格式化字符串

具体使用方法及含义参考 site

  • : 号后为占位字符,只能是一个字符,默认为空格

  • ^<>:分别表示中间对齐,左对齐,右对齐

    • 对齐符号后面为数字,表示字符长度,若传入的字符长度小于该数字,则使用占位字符填充;若传入的字符长度大于该数字,则不作处理
  • + 表示在正数前显示 +;- 负数前显示 -; (空格)表示在正数前加空格

  • bdox 分别表示二进制、十进制、八进制、十六进制,仅适用于传入的数为整数(即 int类型);

  • .2f:表示保留小数的位数(2位),可将输入的整数转换为小数表示。与进制表示符号不能同时使用

  • e% 分别表示使用科学计算法、百分数表示

实例:

# Example 1
n = 1.0
s = "{0:#>10.2f}".format(n)
print(s)
# Example 2
n = 1000
s = "{0:#>3.2f}".format(n)
print(s)   # 定义字符串长度为 3,但是被忽略
# output: 1000.00

(2) 填补字符串

str.center(width[, fillchar])str.rjust(width[, fillchar])str.ljust(width[, fillchar])

调整原字符串,使其中心对齐(右对齐 right,左对齐 left),并使用空格(默认,或者 fillchar 指定的字符)填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。

str.zfill(n):调整原字符串,使其右对齐,前面填充 0。此方法无法更改对齐方式以及填充的字符。

实例:

s = 'Good Morning'
print(s.center(20, '#'))                  # Output 1: ####Good Morning####
print(s.ljust(20, '#'))   # left 左对齐    # Output 2: Good Morning########
print(s.rjust(20, '#'))   # right 右对齐   # Output 3: ########Good Morning
print(s.zfill(20))                        # Output 4: 00000000Good Morning
print("{0:#>20}".format(s))               # Output 5: ########Good Morning

2. 正则表达式 re

参考资料

RUNOOB, Python format 格式化函数, website

posted @ 2022-05-21 19:24  veager  阅读(77)  评论(0编辑  收藏  举报