Python脚本删除的行太多

Python脚本删除的行太多,python,Python,我的任务是删除700个文件中的前4行。我编写了一个脚本,删除前4行并将修改后的文件复制到一个新目录。当我比较两个文件,即原始文件和新文件时,我注意到它删除了前4行和最后4行。这不是我的目标,即除前4行外,所有行都应相同。您知道为什么它会截断最后4行,以及如何修复它吗? 谢谢: fileList=os.listdir(sys.argv[1]) 对于文件列表中的文件: absFile=os.path.join(os.path.abspath(sys.argv[1]),文件) 文件名=文件 FILE2

我的任务是删除700个文件中的前4行。我编写了一个脚本,删除前4行并将修改后的文件复制到一个新目录。当我比较两个文件,即原始文件和新文件时,我注意到它删除了前4行和最后4行。这不是我的目标,即除前4行外,所有行都应相同。您知道为什么它会截断最后4行,以及如何修复它吗? 谢谢:

fileList=os.listdir(sys.argv[1])
对于文件列表中的文件:
absFile=os.path.join(os.path.abspath(sys.argv[1]),文件)
文件名=文件
FILE2=打开(文件名“w”)
打开(ABS文件,'r')作为文件:
FileLines=FILE.readlines()
对于文件行中的行:
nline=line.rstrip()
如果FileLines.index(line)<4:
持续
其他:
文件2.写入(行)
舒蒂尔。复制(文件名,sys.argv[2])
FILE2.close()
删除(文件名)
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
main()

这对我来说不再是问题了。 这种情况下失败的原因是功能设计不当。我修好了。
票证可能会被关闭。

在嵌套的
for
中使用一些打印语句,这样您就可以了解发生了什么。使用此处的提示:谢谢,我尝试了两种建议:第二种建议没有什么区别,当我尝试第一种建议时,即将打印行放在文件之前2。写入(行)它打印了所有行,并且没有截断最后4行。看来写入文件2有点问题。。。仍然不清楚我发现了问题的症结所在:如果我删除fileName=file这行代码,它就可以正常工作。我之所以这么做,是因为我想让新文件的名称与原始文件的名称相同。否则,文件名就是我在“打开”它时提供的名称。需要找出解决方法
fileList = os.listdir(sys.argv[1])

    for file in fileList:
        absFile = os.path.join(os.path.abspath( sys.argv[1]), file )
        fileName = file
        FILE2 = open( fileName, 'w' )
        with open( absFile, 'r' ) as FILE:
            FileLines = FILE.readlines() 
            for line in FileLines:
                nline = line.rstrip()
                if FileLines.index(line) < 4:
                    continue
                else:
                    FILE2.write(line)
            shutil. copy( fileName, sys.argv[2] )

        FILE2.close()
        os.remove( fileName )

if __name__ == '__main__':
    main()