python print to file在控制台中正确打印,但不在文件中打印

时间:2014-09-30 08:36:25

标签: python dictionary io

不幸的是,对于python来说,我会陷入相当琐碎的事情。 我正在尝试打印要提交的字典。 Dict条目如下:

{'a': array(['a', 'b', 'c', '123.d', 'lalal.fufu'], dtype=object)}

我正在使用python write to file from dictionary答案进行打印,如

for (name, mobile) in Dict.iteritems():
    with open('C:\dir\file.csv', "a") as f:
        print ('A %s gives B %s \n' % (name, str(mobile)))
        f.write(name)
        f.write(mobile)
f.close()

但由于某种原因,我在控制台窗口(正确)中获得输出,但该文件在移动部分中包含乱码。尽管使用了str(),但是移动设备没有转换为字符串。在回答的问题中,Haven没有发现任何类似的情况:=(

请帮忙吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

您确实将对象转换为控制台行中的字符串:

print ('A %s gives B %s \n' % (name, str(mobile)))

但是您忘了在f.write方法中执行此操作:

f.write(mobile)

应该是:

f.write(str(mobile))