我试图写一个函数,接受一个字符串(句子),然后清理它并返回所有字母、数字和一个hypen。但是代码似乎出错了。请知道我做错了什么。在
例如:布莱克德索萨是一个!d!0吨
应该回来了:布莱克·德索萨是个d0t
Python:
def remove_unw2anted(str):
str = ''.join([c for c in str if c in 'ABCDEFGHIJKLNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890\''])
return str
def clean_sentence(s):
lst = [word for word in s.split()]
#print lst
for items in lst:
cleaned = remove_unw2anted(items)
return cleaned
s = 'Blake D\'souza is an !d!0t'
print clean_sentence(s)
一个使用
string.translate
的变体,它有利于?易于扩展,是string
的一部分。在输出:
^{pr2}$OP说只保留字符、数字和连字符-也许它们也意味着保留空白?在
你只回最后一个干净的字!在
应该是:
一种较短的方法是:
^{pr2}$相关问题 更多 >
编程相关推荐