从数组中的每个元素中删除最后一个字符(Python)

时间:2012-09-27 16:22:34

标签: python arrays element

我有一个数组find_words,它是

[u'Duration$', u'Noun$', u'Adjective$']

我想删除所有'$'所以它看起来像

[u'Duration', u'Noun', u'Adjective']

我该如何解决这个问题?另外,我如何重新添加'$'。

4 个答案:

答案 0 :(得分:5)

您只需使用list comprehensionstr.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]