Python - 通过具有特定格式输出的列表列表进行迭代;文件输出

时间:2014-09-09 14:19:59

标签: python list file output

很抱歉提出这样一个微不足道的问题,但无论如何我找不到答案,这是我使用Python的第一天(需要它用于工作)。认为我的问题是尝试像C一样使用Python。无论如何,这就是我所拥有的:

for i in data:
    for j in i:
        print("{}\t".format(j))

的形式提供数据
elem[0][0]
elem[1][0]
elem[2][0]
...
elem[0][1]
elem[1][1]
...

即。一次全部。我真正想要做的是直接访问每个元素,这样我就可以将列表数据列表输出到一个文件中,从而用标签分隔元素,而不是用逗号分隔。

这是我用于将数组输出到文件的bastardised Python代码:

k=0
with open("Output.txt", "w") as text_file:
    for j in data:
        print("{}".format(data[k]), file=text_file)
        k += 1

基本上,我有一个列表列表,我希望以制表符分隔/分隔格式保存到文件中,但目前它以逗号分隔出来。我的方法将涉及通过列表再次重复,逐个元素,并通过强制在选项卡中保存输出。

这是数据摘录(虽然改为无意义的值)

data
['a', 'a', 306518, ' 1111111', 'a', '-', .... ]
['a', 'a', 306518, ' 1111111', 'a', '-', .... ]
....

text_file
a    a    306518    1111111    a    -....
a    a    306518    1111111    a    -....
....

3 个答案:

答案 0 :(得分:1)

for i in data:
    print("\t".join(i))

答案 1 :(得分:0)

如果数据是这样的话[' [[1,2,3],[2,3,4]]'

for j in data:
    text_file.write('%s\n' % '\t'.join(str(x) for x in j))

答案 2 :(得分:0)

我认为这应该有效:

with open(somefile, 'w') as your_file:
    for values in data:
        print("\t".join(valeues), file=your_file)