将 defaultdict 存储到文本文件中

问题描述

我有一个看起来像这样的 defaultdict test :

defaultdict(<type 'list'>,{'A': [['Age','19'],['Name','Peter'],['Country','Australia]],'B': [['Age','22'],'Paul'],'England']],'C': ... ]]})

我想将该认语句输出到以键作为文件名的新文件中。我可以做到:

for k,v in test.items():
        with open("{}_test.txt".format(k),"w") as f:
                csv='\n'.join(['\n'.join(t) for t in v])
                f.write("%s,%s\n" % (k,csv))

那行得通,但我遇到的问题是:当我检查文件内容时,它看起来像这样:

cat A_test.txt

    A,Age
    19
    Name
    Peter
    Country
    Australia
    
cat B_test.txt

    B,Age
    22
    Name
    Paul
    Country
    England

我不想在文件第一行的开头使用“A,”和“B,”。应该是这样的:

cat A_test.txt
    
        Age
        19
        Name
        Peter
        Country
        Australia
        
    cat B_test.txt
    
        Age
        22
        Name
        Paul
        Country
        England

有什么解决办法吗?

解决方法

在最后一行中,删除打印密钥的 k ?

f.write("%s\n" % ( csv))

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...