将子列表更改为一个字符串
Change Sub lists into one string
我有以下
[1, 3, 14, 26, 59, 535] [932, 462, 97, 38, 8] [3, 3, 64, 83] [288, 279, 50] [4, 19] [716] [9, 939, 37510]
我想变成
1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510
有什么快速修复方法吗?
我已经尝试加入 (' '.join(str(e) for e in result))
您可以尝试 itertools
模块:
result = [[1, 3, 14, 26, 59, 535],[932, 462, 97, 38, 8], [3, 3, 64, 83], [288, 279, 50], [4, 19], [716], [9, 939, 37510]]
from itertools import *
>print(list(chain.from_iterable(result)) # this give a flat list
# if you do want a string:
> ' '.join(str(e) for e in list(chain.from_iterable(result)))
'1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510'
可以通过简单的python理解来做到这一点
result = [[1, 3, 14, 26, 59, 535], [932, 462, 97, 38, 8], [3, 3, 64, 83], [288, 279, 50], [4, 19], [716], [9, 939, 37510]]
' '.join(str(n) for sublist in result for n in sublist)
这会给你字符串:
'1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510'
您的代码就快完成了,它只需要在理解中多一个子句来展开内部列表。
我有以下
[1, 3, 14, 26, 59, 535] [932, 462, 97, 38, 8] [3, 3, 64, 83] [288, 279, 50] [4, 19] [716] [9, 939, 37510]
我想变成
1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510
有什么快速修复方法吗?
我已经尝试加入 (' '.join(str(e) for e in result))
您可以尝试 itertools
模块:
result = [[1, 3, 14, 26, 59, 535],[932, 462, 97, 38, 8], [3, 3, 64, 83], [288, 279, 50], [4, 19], [716], [9, 939, 37510]]
from itertools import *
>print(list(chain.from_iterable(result)) # this give a flat list
# if you do want a string:
> ' '.join(str(e) for e in list(chain.from_iterable(result)))
'1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510'
可以通过简单的python理解来做到这一点
result = [[1, 3, 14, 26, 59, 535], [932, 462, 97, 38, 8], [3, 3, 64, 83], [288, 279, 50], [4, 19], [716], [9, 939, 37510]]
' '.join(str(n) for sublist in result for n in sublist)
这会给你字符串:
'1 3 14 26 59 535 932 462 97 38 8 3 3 64 83 288 279 50 4 19 716 9 939 37510'
您的代码就快完成了,它只需要在理解中多一个子句来展开内部列表。