Python 字符串操作
1. 字符串操作
1.1 格式化字符串
(1) str.format()
格式化字符串
具体使用方法及含义参考 site
-
:
号后为占位字符,只能是一个字符,默认为空格 -
^
,<
,>
:分别表示中间对齐,左对齐,右对齐- 对齐符号后面为数字,表示字符长度,若传入的字符长度小于该数字,则使用占位字符填充;若传入的字符长度大于该数字,则不作处理
-
+
表示在正数前显示 +;-
负数前显示 -; -
b
,d
,o
,x
分别表示二进制、十进制、八进制、十六进制,仅适用于传入的数为整数(即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