我有这个代码来计算文件中的每一行:
n = sum(1 for line in open('myfile.txt'))
' N'是行数。但它没有提供正确的行数。数量上有数百个差异。也尝试了谷歌中发现的不同方式但似乎没有办法。
知道为什么会这样吗?或者是否存在阻止其提供正确计数的方案?
- UPDATE -
尝试将文件重写到另一个文件:
i = 0
with open(file2) as outFile:
with open(file1) as inFile:
for line in inFile:
outFile.write(line)
i += 1
在行数方面,在视图上看到的输出是file2与file1完全相同。然而,' i'没有给出正确的行数。
答案 0 :(得分:0)
更好的方法是打开文件,然后计算文件readlines()
方法中的行数。
f = open('yourfile.txt', 'r')
print len(f.readlines())