我有一个很大的列表,包含一系列ID和相关值,极短的版本看起来像这样:
large = [('550111', [(4, 5, 8), (6, -4, -6)]), ('222211', [(2, -4, 5), (1, 15, -4)])]
我想以5501
位于A1
的方式将其导出为Excel,然后B1
中的第一组值将位于B2
下,B3
&安培; C1
以及C2
,C3
,2222
中的下一个设置,然后在E1
中有F1
的空格,第一组F2
,F3
& G1
,G2
中的第二个,G3
,550111
4 5 8
6 -4 -6
'space here (dont know how to add one)'
222211
2 -4 5
1 15 -4
'SPACE HERE AGAIN'
。即在Excel中(每个值都有自己的Excel矩形的东西),如:
writer_jobby = csv.writer(open('poo5.csv', 'wb'), delimiter=',')
for i in large:
if i == '[':
i.replace()
if i == ']':
i.replace()
if i == '(':
i.replace()
if i == ')':
i.replace()
else:
writer_jobby.writerow(i)
我尝试了以下内容:
[]
但是我得到了绝对的废话,因为我正在努力解决如何处理我的列表中的()
和550111
4,5,8
6,-4,-6
'space here'
'Max:'
6, 5, 8
'space here'
222211
2,-4,5
1,15,-4
'space here'
'Max:'
2, 15, 5
'space here'
1, 2, 3, ........, 8904
。我真的很感激,如果有人能够解释我如何处理数据,那么我可以用所需的方式导出它。谢谢。
非常感谢。
修改 的
新的所需形式包括绝对最大:
{{1}}
答案 0 :(得分:1)
也许这样的事情会有所帮助吗?
import csv
large = [('5501', [(4, 5, 8), (6, -4, -6)]), ('2222', [(2, -4, 5), (1, 15, -4)])]
with open("out1.csv", "wb") as fp: # open the file, call it fp, and autoclose it
writer = csv.writer(fp, delimiter=",")
for entry in large:
writer.writerow([entry[0]]) # one-element list
for line in entry[1]: # loop over each tuple in the second element
writer.writerow(line)
writer.writerow([]) # write an empty row
这会产生
localhost-2:coding $ cat out1.csv
5501
4,5,8
6,-4,-6
2222
2,-4,5
1,15,-4
csv
模块通常用于从元素中写入行。我不知道final
是什么,但看起来你正在尝试使用large
制作的字符串做一些事情,但效果并不好。