读取文件的一字之差

如题,用python读取文件,因为少了一个字符导致好长时间没找出问题还东改西改的,结果回头一看就少了一个字符而已(人没了就。
待读取的文件格式是csv:

protein  protein combine_score
  ....     ....      .....

先来看看原始使用是怎样的:

with open('data.txt','r') as f:
  for line in f.readline():
      line  =  line.strip();
      print(line);

输出:

p
r
o
t
e
I
n
...

是不是已经看出来问题了,没错少了一个s,现在加上:

f.readline() -> f.readlines()

输出结果:

protein protein combine_score

仅仅是少了一个s,还以为少个字符如果函数库没有的话会报错,毕竟语法大小写都敏感的,打字有时候太快了也没注意,结果给我找了好久,就,离谱。然后查了下readline()函数,好吧是我无知了,确实有。
不过readline的解释是:

  • f.readline(5),读取前5个字节
  • f.readline(),读取一整行

好吧,为什么我这里不能读取一整行?反而还一个单词一个单词的输出,readline()是遇到eof或者换行符就结束,分析可能是csv格式的原因,换txt应该就不会出现这个问题了,ok,又get一个新槽点。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容