本文主要是介绍【Python Cookbook】S02E10 从字符串中去除不需要的字符,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
- 问题
- 解决方案
- 讨论
问题
如果我们希望能够从字符串的开始、结尾或中间部分去掉指定的字符,应该怎么办?
解决方案
Python 字符串内置函数 strip()
方法可以同时从字符串的开头和结尾部分去除指定字符。lstrip()
方法则可以从字符串的左侧去除指定字符,同理 rstrip()
当三个 strip()
函数参数为空时,默认去除空格符。
text = " hello world \n "print(text.strip())
print(text.lstrip())
print(text.rstrip())
结果:
hello world
hello world \nhello world
当指定参数内容时,则去除指定位置的指定内容:
text = "------hello======"print(text.strip("-="))
print(text.lstrip("-"))
print(text.rstrip("="))
结果:
hello
hello======
------hello
讨论
然而 strip()
方法除了可以对字符串的开头和结尾做处理外,是无法对其中的内容做处理的。此时,我们应当选择使用 replace()
方法以及 re.sub()
方法。
import retext = " hello wo rld"
# replace() 方法
print(text.replace(" ", ""))
# re.sub() 方法
print(re.sub('\s+', '', text))
结果:
helloworld
helloworld
在更多的场景下,我们可以将 strip()
函数与生成器表达式相结合,这种方式最大的有点在于其高效,且没有将数据读取到任何形式的临时列表中。
这篇关于【Python Cookbook】S02E10 从字符串中去除不需要的字符的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!