Python123中文件行数问题

Posted KrrGee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python123中文件行数问题相关的知识,希望对你有一定的参考价值。

描述

打印输出附件文件的有效行数,注意:空行不计算为有效行数。

输入输出示例

这是仅给出输出格式样例,不是结果。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪

 

 

 

 我的代码:

1 f = open("latex.log","r").readlines()
2 counts = 0
3 for line in f :
4     line =line.strip(\'\\n\')
5     if len(line)!= 0:
6         counts += 1
7     else:
8         continue
9 print("{}".format(counts))
1 f = open("latex.log","r").readlines()
2 counts = 0
3 for i in range(0,len(f)) :
4     f[i] =f[i].strip(\'\\n\')
5     if len(f[i])!= 0:
6         counts += 1
7     else:
8         continue
9 print("共{}行".format(counts))

 

 

老师给出的参考代码:

1 f = open("latex.log")
2 s = 0
3 for line in f:
4     line = line.strip(\'\\n\')
5     if len(line) == 0:
6         continue
7     s += 1
8 print("共{}行".format(s))

试了半天,但转了一圈发现自己是忘了加“共和行”两个字。

但根本原因是自己语法不扎实,这道题我的收获如下:

 

1、首先是 for in 的问题,

for in 说明:也是循环结构的一种,经常用于遍历字符串、列表,元组,字典等

格式:

执行流程:x依次表示y中的一个元素,遍历完所有元素循环结束。这道题里line可循环列表

 

2、readlines() 、read()、和for in循环文件逐行读取问题

readlines()读取全部文件,返回list形式,带有\\n换行符

read()次性读取文件全部内容,当成一个字符串处理,返回类型为字符串

for line in fh 将文件对象 fh 视为可迭代的,什么是可迭代的我现在也不知道~

3、意外收获:

Python引入了with语句来自动帮我们调用close()方法:

1 with open(\'/path/to/file\', \'r\') as f:
2     print(f.read())

但是代码更佳简洁,并且不必调用f.close()方法。

以上是关于Python123中文件行数问题的主要内容,如果未能解决你的问题,请参考以下文章

python中CSV文件的行数错误

python统计c++源程序文件中不重复代码行数

python 脚本(获取指定文件夹指定文件格式的代码行数注释行数)

统计python文件中的代码,注释,空白对应的行数

Python实现代码行数统计工具

我在哪里更改此 Python 代码片段以将临时文件保存在 tmp 文件夹中?