Python逐行读取文件内容
Posted xinxi2010
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python逐行读取文件内容相关的知识,希望对你有一定的参考价值。
一、使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。
二、需要导入import os
三、下面是逐行读取文件内容的三种方法:
1、第一种方法:
f = open("foo.txt") # 返回一个文件对象
line = f.readline() # 调用文件的 readline()方法
while line:
print line, # 后面跟 ‘,‘ 将忽略换行符
#print(line, end = ‘‘) # 在 Python 3 中使用
line = f.readline()
f.close()
2、第二种方法:
for line in open("foo.txt"):
print line,
3、第三种方法:
四、一次性读取整个文件内容:
file_object = open(‘thefile.txt‘)
try:
all_the_text = file_object.read()
finally:
file_object.close()
五、区别对待读取文本 和 二进制:
1、如果是读取文本
2、如果是读取二进制
input = open(‘data‘, ‘rb‘)
读固定字节
chunk = input.read(100)
python3 按行读取并进行编辑
def test(file): with open(file, ‘r+‘) as a: with open(file, ‘r+‘) as b: for line in a: b.write(‘hello ‘ + line)
1、文件打开格式不一定是“r+”,但是必须指针落点从头开始,所有不能说“a”,因为“w”会把源文件内容清空,也不行
第一个文件打开格式可以是:r,r+
第二个文件打开格式可以是:r+
2、文件必须open两次,因为每一次指针落点都要从头开始
3、r+模式write时会覆盖原来内容,但是
在文件关闭前或缓冲区刷新前,字符串内容存储在缓冲区中,这时你在文件中是看不到写入的内容的。
————————————————
需要安装xlwt库,可以用如下命令安装:
pip install xlwt
1
示例文本:
100 -494 td_error 0.6692215
200 318 td_error 0.57682794
300 57 td_error 0.45037615
400 260 td_error 0.42214713
500 586 td_error 0.45073098
600 615 td_error 0.4728373
700 731 td_error 0.48083866
800 802 td_error 0.3751492
900 440 td_error 0.4249844
1000 430 td_error 0.36427215
12345678910
参考代码:
import xlwt
import codecs
input_txt = ‘demo.txt‘
output_excel = ‘demo.xls‘
sheetName = ‘Sheet1‘
start_row = 0
start_col = 0
wb = xlwt.Workbook(encoding = ‘utf-8‘)
ws = wb.add_sheet(sheetName)
f = open(input_txt, encoding = ‘utf-8‘)
row_excel = start_row
for line in f:
line = line.strip(‘
‘)
line = line.split(‘ ‘)
print(line)
col_excel = start_col
len_line = len(line)
for j in range(len_line):
print (line[j])
ws.write(row_excel,col_excel,line[j])
col_excel += 1
wb.save(output_excel)
row_excel += 1
f.close
1234567891011121314151617181920212223242526272829303132
代码执行完后,会生成一个excel文件
————————————————