我有这个列表:
fxrate =
[[['9.6587'], ['9.9742'], ['9.9203'], ['10.1165'], ['10.1087']],
[['10.7391'], ['10.8951'], ['11.1355'], ['11.561'], ['11.7873']],
[['8.61'], ['8.9648'], ['9.0155'], ['9.153'], ['9.1475']]]
我想使用Python列出这样的列表:
[[9.6587, 9.9742, 9.9203, 10.1165, 10.1087],
[10.7391, 10.8951, 11.1355, 11.561, 11.7873],
[8.61, 8.9648, 9.0155, 9.153, 9.1475]]
毋庸置疑,我对Python和一般编程还是相当陌生的。但是,我最终得到的只是一个值列表,而不是三组列表
答案 0 :(得分:0)
您想要做的是将您的列表弄平,
只需使用列表理解即可。
这将采用您拥有的任何列表列表,并将其展平,
您的列表只有一个深度。
即[["foo"], ["bar"],["List_of_lists"]]
将变成["foo", "bar", "complex_lists"]
flat_list = [item for sublist in l for item in sublist]
根据指定的here
您可以根据需要将此格式设置为代码。 像这样:
fxrate =
[[['9.6587'], ['9.9742'], ['9.9203'], ['10.1165'], ['10.1087']],
[['10.7391'], ['10.8951'], ['11.1355'], ['11.561'], ['11.7873']],
[['8.61'], ['8.9648'], ['9.0155'], ['9.153'], ['9.1475']]]
flat_fxrate = [[item for sublist in fxrate[0] for item in sublist],[item for sublist in fxrate[1] for item in sublist],[item for sublist in fxrate[2] for item in sublist]]
例如。由于您希望将其拆分为三部分,或者如果您打算对其进行扩展,则可以使用。或者使它更清晰,可以使用循环并附加每个部分。像这样注意:通常,使用循环会更好,因为无论此列表的大小如何,它都将始终有效。
flat_fxrate = []
fxrate =
[[['9.6587'], ['9.9742'], ['9.9203'], ['10.1165'], ['10.1087']],
[['10.7391'], ['10.8951'], ['11.1355'], ['11.561'], ['11.7873']],
[['8.61'], ['8.9648'], ['9.0155'], ['9.153'], ['9.1475']]]
for x in fxrate:
flat_fxrate.append([item for sublist in x for item in sublist])