python表格存取的方法

yipeiwu_com7年前Python基础

本文实例为大家分享了python表格存取的具体代码,供大家参考,具体内容如下

xlwt/xlrd库 存Excel文件:(如果存储数据中有字符,那么写法还有点小小的变化)

import xlwt 
 
workbook = xlwt.Workbook(encoding='utf-8') 
booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True) 
#存第一行cell(1,1)和cell(1,2) 
booksheet.write(0,0,34) 
booksheet.write(0,1,38) 
#存第二行cell(2,1)和cell(2,2) 
booksheet.write(1,0,36) 
booksheet.write(1,1,39) 
#存一行数据 
rowdata = [43,56] 
for i in range(len(rowdata)): 
  booksheet.write(2,i,rowdata[i]) 
workbook.save('test_xlwt.xls') 

读Excel文件:(同样是对于数值类型数据)

import xlrd 
 
workbook = xlrd.open_workbook('D:\\Py_exercise\\test_xlwt.xls') 
print(workbook.sheet_names())         #查看所有sheet 
booksheet = workbook.sheet_by_index(0)     #用索引取第一个sheet 
booksheet = workbook.sheet_by_name('Sheet 1') #或用名称取sheet 
#读单元格数据 
cell_11 = booksheet.cell_value(0,0) 
cell_21 = booksheet.cell_value(1,0) 
#读一行数据 
row_3 = booksheet.row_values(2) 
print(cell_11, cell_21, row_3) 
 
>>>34.0 36.0 [43.0, 56.0] 

openpyxl 库 存Excel文件:

from openpyxl import Workbook 
  
workbook = Workbook() 
booksheet = workbook.active   #获取当前活跃的sheet,默认是第一个sheet 
#存第一行单元格cell(1,1) 
booksheet.cell(1,1).value = 6  #这个方法索引从1开始 
booksheet.cell("B1").value = 7 
#存一行数据 
booksheet.append([11,87]) 
workbook.save("test_openpyxl.xlsx") 

读Excel文件:

from openpyxl import load_workbook 
  
workbook = load_workbook('D:\\Py_exercise\\test_openpyxl.xlsx') 
#booksheet = workbook.active        #获取当前活跃的sheet,默认是第一个sheet 
sheets = workbook.get_sheet_names()     #从名称获取sheet 
booksheet = workbook.get_sheet_by_name(sheets[0]) 
 
rows = booksheet.rows 
columns = booksheet.columns 
#迭代所有的行 
for row in rows: 
  line = [col.value for col in row] 
 
#通过坐标读取值 
cell_11 = booksheet.cell('A1').value 
cell_11 = booksheet.cell(row=1, column=1).value 

原理上其实都一样,就写法上有些差别。

其实如果对存储格式没有要求的话,我觉得存成 csv文件 也挺好的:

import pandas as pd 
 
csv_mat = np.empty((0,2),float) 
csv_mat = np.append(csv_mat, [[43,55]], axis=0) 
csv_mat = np.append(csv_mat, [[65,67]], axis=0) 
csv_pd = pd.DataFrame(csv_mat) 
csv_pd.to_csv("test_pd.csv", sep=',', header=False, index=False) 

因为它读起来非常简单:

import pandas as pd 
 
filename = "D:\\Py_exercise\\test_pd.csv" 
csv_data = pd.read_csv(filename, header=None) 
csv_data = np.array(csv_data, dtype=float) 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pytorch 实现在预训练模型的 input上增减通道

如何把imagenet预训练的模型,输入层的通道数随心所欲的修改,从而来适应自己的任务 #增加一个通道 w = layers[0].weight layers[0] = nn.Con...

解决Python3中的中文字符编码的问题

解决Python3中的中文字符编码的问题

python3中str默认为Unicode的编码格式 Unicode是一32位编码格式,不适合用来传输和存储,所以必须转换成utf-8,gbk等等 所以在Python3中必须将str类型...

在Python的列表中利用remove()方法删除元素的教程

 remove()方法从列表中删除第一个obj。 语法 以下是remove()方法的语法: list.remove(obj) 参数   &n...

Python实现对特定列表进行从小到大排序操作示例

本文实例讲述了Python实现对特定列表进行从小到大排序操作。分享给大家供大家参考,具体如下: 1、在系统内新建文件rizhireplacelist.txt root@kali:~#...

python高级特性和高阶函数及使用详解

python高级特性和高阶函数及使用详解

python高级特性 1、集合的推导式 •列表推导式,使用一句表达式构造一个新列表,可包含过滤、转换等操作。 语法:[exp for item in collection i...