使用IDLE从file_A
写入file_B
始终会使IDLE在写入时打印出来。如果文件非常大,那么该过程将需要数小时才能完成。
为了加快速度,我怎样才能在写入新文件的过程中使IDLE 不打印任何内容?
一个简单的代码,用于演示IDLE在写入行时打印行:
file = open('file.csv','r')
copy = open('copy.csv','w')
for i in file:
i = i.split()
copy.write(str(i))
答案 0 :(得分:1)
我假设您使用的是Python3,其中write
返回写入文件的字符数,而IDLE的python shell在您调用它时会打印此返回值。在Python2 write
中,返回IDLE shell未打印的None
。
解决方法是将write的返回值赋给临时虚拟变量
dummy = f.write("my text")
对于您的示例,以下代码应该起作用
file = open('file.csv','r')
copy = open('copy.csv','w')
for i in file:
i = i.split()
dummy = copy.write(str(i))
我为你们所有人添加了两个截图,以便在我的系统上看到Python 2和Python 3中的写入之间的区别。