python 怎么求一个文档的总行数?

file = open('D:/drpython/711/student.txt','r')
for i in range (1,6): //循环读取txt文档,从第1行到最后一行,此处6是我已知txt文档总行数,如何用python求取txt文档总行数,避免程序写死,使用性不强、
s = file.readline()
if i > 1:
stu = dom.createElement('student')
str=s.split()

获取总行数可以用下面的方法获取
lines = file.readlines()
print len(lines)

如果只是遍历文件,可以用下面的方法:
f = open('file', 'r')
for line in open('file'):
line = f.readline()追问

这个是逐行遍历。如果我要从第2行开始操作怎么控制呢?

追答

文件打open后先执行一次readline(),把结果丢掉,然后再逐行遍历。

追问

f = open('file', 'r')
line = f.readline()
for line in open('file'):
line = f.readline()
是这么个意思不,貌似不对啊,还有这个for循环里的open('file'):是啥意思

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-07-16
readlines不太推荐,文件有多大,readlines生成的序列就会占据多大的内存
一行行读虽然慢点,但是不会太占资源
n = 0
with open(file) as f:
for x in f:
n += 1
print n本回答被网友采纳
相似回答