在python中从字符串中删除不必要的字符

2024-06-01 08:39:48 发布

您现在位置:Python中文网/ 问答频道 /正文

zenPython='' 蒂姆·彼得斯的《Python禅》

美胜于丑。 显式比隐式好。 简单总比复杂好。 复杂总比复杂好。 平的比嵌套的好。 稀疏比密集好。 可读性很重要。 特殊情况不足以违反规则。 虽然实用胜过纯洁。 错误永远不应该悄无声息地过去。 除非明确沉默。 面对模棱两可的情况,拒绝猜测的诱惑。 应该有一个——最好只有一个——显而易见的方法来做到这一点。 虽然这种方式一开始可能并不明显,除非你是荷兰人。 现在总比没有好。 虽然从来没有比现在更好。 如果实现很难解释,那就不是个好主意。 如果实现很容易解释,这可能是一个好主意。 '''

如何删除不必要的字符,如--、*、,!在此zenpython字符串中使用列表理解和拆分

我已经使用replace和python中的普通循环创建了解决方案,但我需要一个最佳的解决方案


Tags: 方法字符串列表规则错误方式情况解决方案
3条回答

使用maketrans()函数,其中第一个参数是“-、*、!”列表,第二个参数是空字符串列表-“”

使用strip()删除特殊字符(&;列表理解

words = zenPython.split()
for i in [',', '.', '-', '*', '!']:
    words = [x.strip(i) for x in words]    #list of words with ", . - * !" characters removed

您可以使用正则表达式来实现这一点

import re

output = re.sub('[^A-Z a-z 0-9 \n]+', '', my_string)

print(output)

这将删除您在问题中提到的不必要字符

希望这有帮助

相关问题 更多 >