列表上的Python 2字符串操作

时间:2012-10-03 16:43:21

标签: python string list

列表需要转换为字符串并执行字符串操作

是否有将两种操作转换为1的有效方法,

lista = ['col-1,','col-2,','col-3,']

stra = ' '.join(lista)

stra = stra.rstrip(',')

5 个答案:

答案 0 :(得分:2)

', '.join(['col-1', 'col-2', 'col-3'])怎么样?那么你根本不需要rstrip

答案 1 :(得分:0)

由于你的join返回一个字符串..因此,你可以链接另一个方法调用而不是存储它......

stra = ' '.join(Lista).rstrip(',')

或者,你可以做得更好: -

stra = ' '.join(s.rstrip(',') for s in lista)

这不会在您的列表项之间打印逗号(,)..

答案 2 :(得分:0)

所有字符串方法都返回新字符串。

stra = " ".join(s.rstrip(",") for s in lista)

或者如果您只想修剪最后一个逗号,只需" ".join(lista).rstrip(",")

答案 3 :(得分:0)

由于join()方法返回一个字符串,你可以链接方法:

stra = ' '.join(lista).rstrip(',')  # prints col-1, col-2, col-3

或者,如果你想在加入字符串之前删除逗号(因为你在每个字符串的末尾都有逗号,我假设你想要):

stra = ' '.join(map(lambda s: s.rstrip(','), lista))  # prints col-1 col-2 col-3

或:

stra = ' '.join(s.rstrip(',') for s in lista)  # prints col-1 col-2 col-3

答案 4 :(得分:0)

我不完全确定“将两个操作转换为1”的意思,但是如果你对lista没有任何控制权,并且可以依赖于指定的格式,那么就这样做

' '.join(lista)[:-1]

如果你控制了lista,那么请按照nneonneo's建议并删除列表中的逗号。