列表需要转换为字符串并执行字符串操作
是否有将两种操作转换为1的有效方法,
lista = ['col-1,','col-2,','col-3,']
stra = ' '.join(lista)
stra = stra.rstrip(',')
答案 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建议并删除列表中的逗号。