【问题标题】:Python - Nested List to Tab Delimited File?Python - 嵌套列表到制表符分隔文件?
【发布时间】:2011-01-31 08:51:48
【问题描述】:

我有一个包含约 30,000 个子列表的嵌套列表,每个子列表包含三个条目,例如,

nested_list = [['x', 'y', 'z'], ['a', 'b', 'c']].

我希望创建一个函数,以便将此数据构造输出为制表符分隔格式,例如,

x    y    z
a    b    c

非常感谢任何帮助!

提前致谢, 海鲜。

【问题讨论】:

  • 到目前为止你有什么?任何代码尝试部分有效?

标签: python list nested csv


【解决方案1】:
>>> nested_list = [['x', 'y', 'z'], ['a', 'b', 'c']]
>>> for line in nested_list:
...   print '\t'.join(line)
... 
x   y   z
a   b   c
>>> 

【讨论】:

  • 只是好奇将子列表存储为 3 元组而不是列表会有所帮助吗?性能明智?
  • @TheMachineCharmer:随意使用timeit 看看实际的影响是什么。 docs.python.org/library/timeit.html
  • @TheMachineCharmer:请注意,真正的代码可能没有以这种方式硬编码列表,而是从文件中读取它们或从其他来源获取它们
【解决方案2】:
>>> print '\n'.join(map('\t'.join,nested_list))
x       y       z
a       b       c
>>>

【讨论】:

    【解决方案3】:
    out = file("yourfile", "w")
    for line in nested_list:
        print >> out, "\t".join(line)
    

    【讨论】:

      【解决方案4】:
      with open('fname', 'w') as file:
          file.writelines('\t'.join(i) + '\n' for i in nested_list)
      

      【讨论】:

        【解决方案5】:

        在我看来,这是一个简单的单行:

        print '\n'.join(['\t'.join(l) for l in nested_list])
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-25
          • 1970-01-01
          • 2013-01-21
          • 2016-01-05
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多