我需要连接两个文件,一个包含一个数字,另一个包含至少两行数据。我已经尝试过 shutil.copyfile(file2,file1) 和 subprocess.call("cat " + file2 + " >> " + file1, shell=True),两者都给了我相同的结果。具有单个数字的文件包含一个整数和一个换行符(即两个字符),因此当我将两个文件放在一起时,file2 的前两个字符将被覆盖,而不是仅添加到末尾。如果我使用“cat file2 >> file1”通过 shell 执行此操作,则不会发生这种情况,并且效果很好。
这就是我的意思:
import numpy as np
from subprocess import call
f.open(file1)
f.write('2\n')
np.savetxt(file2,datafile,fmt)
call("cat " + file2 " >> " + file1, shell=True)
所以而不是得到:
2
data data data ...
data data data ...
我得到:
2
ta data data ...
data data data ...
我不知道是什么导致了这个问题,但这非常令人沮丧。有什么建议么?