python读取各种⽂件数据⽅法解析python读取.txt(.log)⽂件、.xml ⽂件、excel⽂件数据,并将数据类型转换为需要的类型,添加到list中详解
1.读取⽂本⽂件数据(.txt结尾的⽂件)或⽇志⽂件(.log结尾的⽂件)
以下是⽂件中的内容,⽂件名为(与data.log内容相同),且处理⽅式相同,调⽤时改个名称就可以了:
以下是python实现代码:
# -*- coding:gb2312 -*-
import json
def read_txt_high(filename):
with open(filename, 'r') as file_to_read:
list0 = [] #⽂件中的第⼀列数据
list1 = [] #⽂件中的第⼆列数据
while True:
lines = file_adline() # 整⾏读取数据
if not lines:
break
item = [i for i in lines.split()]
data0 = json.loads(item[0])#每⾏第⼀个值
data1 = json.loads(item[1])#每⾏第⼆个值
list0.append(data0)
list1.append(data1)
return list0,list1
list0与list1分别为⽂档中的第⼀列数据与第⼆列数据。运⾏若是⽂本⽂件(.txt结尾的⽂件)输⼊以下:
aa,bb = read_txt_high('')
print aa
print bb
若是⽇志⽂件(.log结尾的⽂件),输⼊以下:
aa,bb = read_txt_high('data.log')
print aa
print bb
运⾏结果如下:
2.读取.xml结尾的⽂件
XML⽂件的名称为l, 内容如下图所⽰:
以下是实现代码:
# -*- coding:gb2312 -*-
# coding = utf-8
from pylab import *
import xml.dom.minidom
def read_xml():
dom = xml.dom.minidom.parse('l')#打开xml⽂档
ElementsByTagName('caption')
list_str = [] #字符串
for item in cc:
list_str.append(str(item.firstChild.data))
bb = ElementsByTagName('maxid')
list_fig = []
for item in bb:
list_fig.append(item.firstChild.data)
su = list_fig[0].encode("gbk")
list_fig2 = su.split(",")
list_fig_num = []
for i in list_fig2:
list_fig_num.append(int(i))
ee = ElementsByTagName('time')
list_tim = []
for item in ee:
list_tim.append(item.firstChild.data)
sg = list_tim[0].encode("gbk")
list_time = sg.split(",")
gg = ElementsByTagName('font_size')
g1 = []python怎么读取文件中的数据
for item in gg:
g1.append(item.firstChild.data)
su = g1[0].encode("gbk")
return list_str,list_fig_num,list_time,su
调⽤此函数如下所⽰:
a,b,c,d = read_xml()
print a
print b
print c
print d
输出结果如下图所⽰:
3.读取excel⽂件数据,并将其存⼊list列表中
excel表格中的数据如下图所⽰,表格命名为data.xlsx:
⾸先将ID列中的数据保存到列表list_col中,实现代码如下所⽰:# -*- coding: utf-8 -*-
import xlrd
import json
def read_ex_stop_PTline():
# 打开⽂件
workbook = xlrd.open_workbook(r'data.xlsx')
sheet = workbook.sheet_by_name('PTline')
list_col = []
for i in range(ws):
c = ll(i,3).value
list_col.append(int(c))
print list_col
调⽤此函数,输出结果如下:
以下将linkIDsequence列数据存放到⼀个list中,即list_ele中,实现代码如下:# -*- coding: utf-8 -*-
import xlrd
import json
def read_ex_stop_PTline():
# 打开⽂件
workbook = xlrd.open_workbook(r'data.xlsx')
sheet = workbook.sheet_by_name('PTline')
list_ele = [] #第⼋列的所有数据放⼊⼀个list中
for i in range(ws):
c = ll(i, 8).value
cc = json.loads(c) #第⼋列的每个单元格处理为⼀个list
for j in range(len(cc)):
list_ele.append(cc[j])
print list_ele
调⽤函数read_ex_stop_PTline,输出结果如下图所⽰:
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论