导读:很多朋友问到关于python得到txt多少条数据的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
python怎么读取txt文件全部数据
Python 读写文本文件
首先需要注意的是,txt文件是具有字符编码的,不同的txt字符编码可能不同。具体是什么编码,可以用 notepad++ 等文本编辑器查看。
读取文件建议使用 with...as... 结构,可以自动关闭文件。
with open("text.txt", "r") as f:
text = f.read()
print(text)
如果不用 with...as... 则必须手动关闭文件:
f = open("text.txt", "r")
text = f.read()
f.close()
print(text)
如果读取的文件含有中文,使用内置的open可能会报错,这个时候要用到codecs模块:
import codecs
with codecs.open("text.txt", "r", encoding="utf-8") as f:
text = f.read()
print(text)
(假设 text.txt 是 utf-8 编码)
python怎么把查询输入内容在txt里是多少行?
keyword = input()
with open('search.txt', 'r') as fin:
for i, line in enumerate(fin):
if keyword in line:
print(i, line)
用python编程读取TXT时,数据大概有1千万条,速度很慢如何解决?
两种可选的方式
1:使用yield的懒惰加载,示例代码如下:
123456789101112
def read_in_chunks(file_object, chunk_size=1024): """Lazy function (generator) to read a file piece by piece. Default chunk size: 1k.""" while True: data = file_object.read(chunk_size) if not data: break yield data f = open('really_big_file.dat')for piece in read_in_chunks(f): process_data(piece)
2:使用iter和一个帮助方法:
123456
f = open('really_big_file.dat')def read1k(): return f.read(1024) for piece in iter(read1k, ''): process_data(piece)
推荐使用第一个。
结语:以上就是首席CTO笔记为大家整理的关于python得到txt多少条数据的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~