Python使用pandas和xlsxwriter读写xlsx文件的方法示例

yipeiwu_com6年前Python基础

python使用pandas和xlsxwriter读写xlsx文件

已有xlsx文件如下:

1. 读取前n行所有数据

# coding: utf-8
import pandas as pd
# 1. 读取前n行所有数据
df = pd.read_excel('school.xlsx')#读取xlsx中第一个sheet
data1 = df.head(7)  # 读取前7行的所有数据,dataFrame结构
data2 = df.values  #list形式,读取表格所有数据
print("获取到所有的值:\n{0}".format(data1)) #格式化输出
print("获取到所有的值:\n{0}".format(data2)) #格式化输出

2. 读取特定行,特定列

# coding: utf-8
import pandas as pd
# 2. 读取特定行,特定列
df = pd.read_excel('school.xlsx') #读取xlsx中第一个sheet
data1 = df.ix[0].values   #读取第一行所有数据,0表示第一行,不包含表头
data2 = df.ix[1,1]  #读取指定行列位置数据
data3 = df.ix[[1,2]].values  #读取指定多行
data4 = df.ix[:,[0]].values  #读取指定列的所有行
#data4 = df[u'class'].values  #同上
data5 = df.ix[:,[u'class',u'name']].values  #读取指定键值列的所有行
print("数据:\n{0}".format(data1))
print("数据:\n{0}".format(data2))
print("数据:\n{0}".format(data3))
print("数据:\n{0}".format(data4))
print("数据:\n{0}".format(data5))

3. 获取xlsx文件行号,所有列名称

# coding: utf-8
import pandas as pd
# 3. 获取xlsx文件行号,所有列名称
df = pd.read_excel('school.xlsx') #读取xlsx中第一个sheet
print("输出行号列表{}".format(df.index.values))  # 获取xlsx文件的所有行号
print("输出列标题{}".format(df.columns.values))  #所有列名称

4. 读取xlsx数据转换为字典

# coding: utf-8
import pandas as pd
# 4. 读取xlsx数据转换为字典
df = pd.read_excel('school.xlsx') #读取xlsx中第一个sheet
test_data=[]
for i in df.index.values:#获取行号的索引,并对其进行遍历:
  #根据i来获取每一行指定的数据 并利用to_dict转成字典
  row_data=df.ix[i,['id','name','class','data','stature']].to_dict()
  test_data.append(row_data)
print("最终获取到的数据是:{0}".format(test_data))

5. 写xlsx文件

#coding: utf-8
import xlsxwriter
# 创建工作簿
file_name = "first_book.xlsx"
workbook = xlsxwriter.Workbook(file_name)
# 创建工作表
worksheet = workbook.add_worksheet('sheet1')
# 写单元格
worksheet.write(0, 0, 'id')
worksheet.write(0,1, 'name')
worksheet.write(0,2, 'class')
worksheet.write(0,3, 'data')
# 写行
worksheet.write_row(1, 0, [1, 2, 3])
# 写列,其中列D需要大写
worksheet.write_column('D2', ['a', 'b', 'c'])
# 关闭工作簿
workbook.close()

写入的xlsx文件如下:

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)

python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)

一.分散性聚类(kmeans) 算法流程: 1.选择聚类的个数k. 2.任意产生k个聚类,然后确定聚类中心,或者直接生成k个中心。 3.对每个点确定其聚类中心点。 4.再计算其聚类新中心...

numpy 进行数组拼接,分别在行和列上合并的实例

numpy 进行数组拼接,分别在行和列上合并的实例

在进行数据分析的时候,会把把一些具有多个特征的样本数据进行拼接合并吗,放在一起分析,预测.... 下面是用numpy中的函数进行数组的拼接。 (1)方法一。np.vstack() v 表...

Python与shell的3种交互方式介绍

概述 考虑这样一个问题,有hello.py脚本,输出”hello, world!”;有TestInput.py脚本,等待用户输入,然后打印用户输入的数据。那么,怎么样把hello.py输...

Python获取脚本所在目录的正确方法

1.以前的方法如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path...

python中的逆序遍历实例

如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列。 range()语法: range(start,end,step=1):顾头不顾尾 正序遍历: range(10):...