我有这个清单:
list1 = [['123'], ['456'], ['789']]
我想将此列表转换为字符串,然后以此格式将其存储到数据库的列中:
123 / 456 / 789
我试过这样做:
s2 = ", ".join(repr(e) for e in list1)
print(s2)
但这就是我所得到的:
['123'], ['456'], ['789']
关于我接下来应该做什么以获得所需输出的任何想法?
答案 0 :(得分:8)
你很接近,但你想要做的是首先展开你的列表列表,然后转换为字符串。像这样:
" / ".join([item for sublist in list1 for item in sublist])
答案 1 :(得分:1)
您可以使用 Possible orders of intermediate nodes [(4, 3), (3, 4)]
[1, 8, 4, 8, 1, 3, 7, 5, 9, 2]
9
[1, 3, 1, 8, 4, 5, 9, 2]
7
itertools.chain
答案 2 :(得分:1)
list1 = [['123'], ['456'], ['789']]
st = [ '/' + x[0] for x in list1]
st = ''.join(st)
print(st)
<强>输出强>
/ 123 /789分之456
答案 3 :(得分:0)
由于列表中有列表,您需要获得第一个指示,这样才能帮助您
" / ".join(map(lambda x:x[0],list1))
答案 4 :(得分:0)
如果你特别想要一个子列表的第一个元素,即使它有多个元素,那么我认为这个单行是最清楚的:
s2 = ' / '.join( x[0] for x in list1 )