字符串方法——实战中的其它常见字符串方法
其它的字符串方法有更专注的作用 —— 比如,在一行文本的末尾去除空白,执行大小写转换,测试内容,测试在头尾的子串:
>>> line = "The knights who say Ni!\n"
>>> line.rstrip()
'The knights who say Ni!'
>>> line.upper()
'THE KNIGHTS WHO SAY NI!\n'
>>> line.isalpha()
False
>>> line.endswith('Ni!\n')
True
>>> line.startswith('The')
True
其它技术有时也可被用来达到和字符串方法同样的结果 —— 比如,in
操作符可用来测试子串的存在,length
和切片操作可用来模拟 endswith
:
>>> line
'The knights who say Ni!\n'
>>> line.find('Ni') != −1 # 通过方法调用或表达式搜索
True
>>> 'Ni' in line
True
>>> sub = 'Ni!\n'
>>> line.endswith(sub) # 通过方法调用或切片的结尾测试
True
>>> line[-len(sub):] == sub
True
另请参阅在本章后面描述的 format
字符串格式化方法;它提供了将许多操作结合在一个步骤中的更多高级替换工具。
再说一次,因为有许多可用的字符串方法,这里不会学习每一个。本书稍后将看到一些额外的字符串示例,但要获取更多细节,可以参阅 Python 库手册和其他的文档源,或简单地亲自交互实验。还可以对任何字符串对象 S 的方法使用 help(S.method)
,检查其结果来获取更多提示;如第 4 章所示,在 str.method
上运行 help
很可能给出同样的细节。
注意字符串方法不接受模式 —— 对于基于模式的文本处理,必须使用 Python 的 re
标准库模块,这是在第 4 章中引入的一个高级工具,但很可能超出了本书的范围(一个更进一步的简短例子出现在第 37 章末尾)。然而,因为这个限制,字符串方法有时可能比 re
模块的工具运行得更快。
推荐文章: