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

首頁 > 編程 > Python > 正文

Python對CSV、Excel、txt、dat文件的處理

2020-02-15 22:59:53
字體:
來源:轉載
供稿:網友

python讀取txt文件:(思路:先打開文件,讀取文件,最后用for循環輸出內容)

1、讀取

1.1基于python csv庫

#3.讀取csv至字典x,yimport csv# 讀取csv至字典csvFile = open(r'G:/訓練小樣本.csv', "r")reader = csv.reader(csvFile)#print(reader)# 建立空字典result = {}i=0for item in reader: if reader.line_num==1: continue result[i]=item i=i+1# 建立空字典 j=0xx={}yy={}for i in list(range(29)): xx[j]=result[i][1:-1] yy[j]=result[i][-1] # print(x[j]) # print(y[j]) j=j+1csvFile.close()##3.1字典轉換成listX=[]Y=[]for i in xx.values(): X.append(i)for j in xx.values(): X.append(j) 

改進的CSV讀取,直接從CSV文件讀取到 list:

#加載數據 def loadCSV(filename):  dataSet=[]  with open(filename,'r') as file:  csvReader=csv.reader(file)  for line in csvReader:  dataSet.append(line)  return dataSet 

讀取的方式,是一行一行讀取。

1.2 pandas讀取

import pandas as pdtest_df = pd.read_excel(r'G:/test_linearRegression.xlsx')

2、寫入

import csv#程序三with open(r'G:/0pythonstudy/chengxu/test.csv','w',newline='') as myFile:  myWriter=csv.writer(myFile)  myWriter.writerow([7,'g'])  myWriter.writerow([8,'h'])  myList=[[1,2,3],[4,5,6]]  myWriter.writerows(myList) # myFile.close()with open(r'G:/0pythonstudy/chengxu/test.csv',"r") as data: result=csv.reader(data) for item in result: print(item)

寫入,如果純用 open(r'G:/0pythonstudy/chengxu/test.csv','w'),就會出現多出一空行。

二、Excel文件處理

1、讀取
方法一:

使用Python的 xlrd包。

#1、導入模塊import xlrd#2、打開Excel文件讀取數據data = xlrd.open_workbook('test_data.xlsx')# print('data',data)#3、使用技巧#獲取一個工作表table = data.sheets()[0] #通過索引順序獲取# print('table',table)print(table.nrows)#table 行數print(table.ncols)table = data.sheet_by_index(0) #通過索引順序獲取# print('table',table)table = data.sheet_by_name(u'Sheet1')#通過名稱獲取# 獲取整行和整列的值(數組)i=1print(table.row_values(i))#獲得第i行數據print(table.col_values(i))#獲得第i列數據

運行結果:

92[2.0, 6.0][5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0]

方法二:

或者,可以把Excel文件轉換成csv格式文件,直接修改后綴名,好像會出錯,還是建議另存為修改成csv文件。

方法三:
使用pandas包

import pandas as pdtest_df = pd.read_excel(r'G:/test.xlsx')

pandas 讀取為dataframe格式,其中dataframe.values是nparray格式,nparray.tolist()是python list 格式。

注意:pandas和 xlrd的區別在于,pandas會把第一行和第一列作為索引的表頭;xlrd則會把所有的數據都讀取,沒有索引表頭一說。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潜江市| 台州市| 民乐县| 宁南县| 乐昌市| 吐鲁番市| 白山市| 麟游县| 温宿县| 保定市| 达拉特旗| 兰溪市| 磐石市| 莎车县| 靖远县| 盐源县| 宜兴市| 灵武市| 潜山县| 田阳县| 鹤壁市| 宣汉县| 乐亭县| 新绛县| 遂平县| 宁陵县| 扶绥县| 二连浩特市| 吴川市| 抚州市| 青岛市| 瑞金市| 顺昌县| 沙田区| 福安市| 南漳县| 仲巴县| 宽城| 建水县| 湟中县| 宁陕县|