我有一个数组find_words,它是
[u'Duration$', u'Noun$', u'Adjective$']
我想删除所有'$'所以它看起来像
[u'Duration', u'Noun', u'Adjective']
我该如何解决这个问题?另外,我如何重新添加'$'。
答案 0 :(得分:5)
您只需使用list comprehension和str.rstrip()
:
[word.rstrip("$") for word in words]
或者添加它们:
[word+"$" for word in words]
E.g:
>>> words = ['Duration$', 'Noun$', 'Adjective$']
>>> words = [word.rstrip("$") for word in words]
>>> words
['Duration', 'Noun', 'Adjective']
>>> [word+"$" for word in words]
['Duration$', 'Noun$', 'Adjective$']
答案 1 :(得分:3)
列表理解是你的朋友。
您可以选择仅移除最后一个字符word[:-1]
,也可以选择仅存在$ word.rstrip('$')
。这将是应用程序定义的
words = [u'Duration$', u'Noun$', u'Adjective$']
result = [word[:-1] for word in words]
还要重新添加它:
added_back = [word + '$' for word in result]
答案 2 :(得分:3)
words = [ x[:-1] for x in words ]
将删除每个项目中的最后一个字符
答案 3 :(得分:1)
删除最后一个字符,无论它是什么:
find_words = [i[:-1] for i in find_words]
但如果保证是rstrip
,您应该使用$
:
find_words = [i.rstrip("$") for i in words]
添加$
:
find_words = [i + "$" for i in find_words]