国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python讀取各種文件數(shù)據(jù)方法解析

2020-01-04 13:39:37
字體:
供稿:網(wǎng)友

python讀取.txt(.log)文件 、.xml 文件 、excel文件數(shù)據(jù),并將數(shù)據(jù)類型轉(zhuǎn)換為需要的類型,添加到list中詳解

1.讀取文本文件數(shù)據(jù)(.txt結(jié)尾的文件)或日志文件(.log結(jié)尾的文件)

以下是文件中的內(nèi)容,文件名為data.txt(與data.log內(nèi)容相同),且處理方式相同,調(diào)用時(shí)改個(gè)名稱就可以了:

python,讀取,文件數(shù)據(jù)

以下是python實(shí)現(xiàn)代碼:

# -*- coding:gb2312 -*-import jsondef read_txt_high(filename):  with open(filename, 'r') as file_to_read:    list0 = [] #文件中的第一列數(shù)據(jù)    list1 = [] #文件中的第二列數(shù)據(jù)    while True:      lines = file_to_read.readline() # 整行讀取數(shù)據(jù)      if not lines:        break      item = [i for i in lines.split()]      data0 = json.loads(item[0])#每行第一個(gè)值      data1 = json.loads(item[1])#每行第二個(gè)值      list0.append(data0)      list1.append(data1)  return list0,list1

list0與list1分別為文檔中的第一列數(shù)據(jù)與第二列數(shù)據(jù)。運(yùn)行若是文本文件(.txt結(jié)尾的文件)輸入以下:

aa,bb = read_txt_high('data.txt')print aaprint bb

若是日志文件(.log結(jié)尾的文件),輸入以下:

aa,bb = read_txt_high('data.log')print aaprint bb

運(yùn)行結(jié)果如下:

python,讀取,文件數(shù)據(jù)

2.讀取.xml結(jié)尾的文件

XML文件的名稱為abc.xml, 內(nèi)容如下圖所示:

python,讀取,文件數(shù)據(jù)

以下是實(shí)現(xiàn)代碼:

# -*- coding:gb2312 -*-# coding = utf-8from pylab import *import xml.dom.minidomdef read_xml():  dom = xml.dom.minidom.parse('abc.xml')#打開xml文檔  cc=dom.getElementsByTagName('caption')  list_str = [] #字符串  for item in cc:    list_str.append(str(item.firstChild.data))  bb = dom.getElementsByTagName('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 = dom.getElementsByTagName('time')  list_tim = []  for item in ee:    list_tim.append(item.firstChild.data)  sg = list_tim[0].encode("gbk")  list_time = sg.split(",")  gg = dom.getElementsByTagName('font_size')  g1 = []  for item in gg:    g1.append(item.firstChild.data)  su = g1[0].encode("gbk")  return list_str,list_fig_num,list_time,su

調(diào)用此函數(shù)如下所示:

a,b,c,d = read_xml()print aprint bprint cprint d

輸出結(jié)果如下圖所示:

python,讀取,文件數(shù)據(jù)

3.讀取excel文件數(shù)據(jù),并將其存入list列表中

excel表格中的數(shù)據(jù)如下圖所示,表格命名為data.xlsx:

python,讀取,文件數(shù)據(jù)

首先將ID列中的數(shù)據(jù)保存到列表list_col中,實(shí)現(xiàn)代碼如下所示:

# -*- coding: utf-8 -*-import xlrdimport jsondef read_ex_stop_PTline():  # 打開文件  workbook = xlrd.open_workbook(r'data.xlsx')  sheet = workbook.sheet_by_name('PTline')  list_col = []  for i in range(1,sheet.nrows):    c = sheet.cell(i,3).value    list_col.append(int(c))  print list_col

調(diào)用此函數(shù),輸出結(jié)果如下:

python,讀取,文件數(shù)據(jù)

以下將linkIDsequence列數(shù)據(jù)存放到一個(gè)list中,即list_ele中,實(shí)現(xiàn)代碼如下:

# -*- coding: utf-8 -*-import xlrdimport jsondef read_ex_stop_PTline():  # 打開文件  workbook = xlrd.open_workbook(r'data.xlsx')  sheet = workbook.sheet_by_name('PTline')  list_ele = [] #第八列的所有數(shù)據(jù)放入一個(gè)list中  for i in range(1,sheet.nrows):    c = sheet.cell(i, 8).value    cc = json.loads(c) #第八列的每個(gè)單元格處理為一個(gè)list    for j in range(len(cc)):      list_ele.append(cc[j])  print list_ele

調(diào)用函數(shù)read_ex_stop_PTline,輸出結(jié)果如下圖所示:

python,讀取,文件數(shù)據(jù)

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到python教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 和顺县| 北宁市| 桦川县| 吴川市| 金秀| 大名县| 额尔古纳市| 乡宁县| 满城县| 浙江省| 洛扎县| 班戈县| 中山市| 凤凰县| 醴陵市| 土默特左旗| 湘乡市| 元朗区| 油尖旺区| 扶沟县| 宁河县| 祁阳县| 保山市| 宜春市| 平罗县| 溧水县| 宜丰县| 霍山县| 余干县| 茌平县| 青海省| 邵阳县| 繁昌县| 新宾| 葵青区| 蛟河市| 阜平县| 漳平市| 荣昌县| 永清县| 临邑县|