百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

python操作excel大全

off999 2025-05-15 20:22 29 浏览 0 评论

一、常用python操作excel模块

  • xlrd
  • csv
  • openpyxl

二、各个模块操作

1、xlrd操作

安装

pip install xlrd

例如excel内容如下,对该excel进行操作

# -*- coding: utf-8 -*-
import xlrd

def read_excel():
# 打开文件
workbook = xlrd.open_workbook('banwod.xls')
# 获取所有sheet
print workbook.sheet_names() # [u'sheet1', u'sheet2']
sheet2_name = workbook.sheet_names()[1]

# 根据sheet索引或者名称获取sheet内容
sheet2 = workbook.sheet_by_index(0) # sheet索引从0开始,或者根据sheet名称来获得,如下
# sheet2 = workbook.sheet_by_name('Sheet1')#同上

  # sheet的名称,行数,列数
print "sheet的名称,行数,列数",sheet2.name,sheet2.nrows,sheet2.ncols

# 获取整行和整列的值(数组)
rows = sheet2.row_values(2) # 获取第四行内容
cols = sheet2.col_values(2) # 获取第三列内容
print "行"
for i in rows:
    print i,
    print "列"
for i in cols:
    print i,

# 获取单元格内容的几种方式
print sheet2.cell(1,0).value.encode('utf-8')
print sheet2.cell_value(1,0).encode('utf-8')
print sheet2.row(1)[0].value.encode('utf-8')

# 获取单元格内容的数据类型
# print sheet2.cell(1,0).ctype

if __name__ == '__main__':
    read_excel()

输出:


2、csv模块

自带模块,无需安装

import csv
with open('egg2.csv', 'wb') as csvfile:
    spamwriter = csv.writer(csvfile,dialect='excel')
    spamwriter.writerow(['a', '1', '1', '2', '2'])
    spamwriter.writerow(['b', '3', '3', '6', '4'])
    spamwriter.writerow(['c', '7', '7', '10', '4'])
    spamwriter.writerow(['d', '11','11','11', '1'])
    spamwriter.writerow(['e', '12','12','14', '3'])

输出:


3、openpyxl模块

pip install openpyxl

多sheet操作,新建sheet、对指定sheet进行操作

import openpyxl


def writeExcel(path, value, sheet):
    '''
    :param sheet:sheet的名称
    :param path:文件的名字和路径
    :param value1: 写入的数据
    :return:
    '''
    book = openpyxl.Workbook()
    sheet1 = book.active
    sheet1.title = sheet

    for i in range(0, len(value)):
        for j in range(0, len(value[i])):
            sheet1.cell(row=i + 1, column=j + 1, value=str(value[i][j]))

    book.save(path)
    print("写入数据成功!")


def addExcel(path, value, sheet):
    '''
   :param sheet:sheet的名称
    :param path:写入excel的路径
    :param value: 追加的数据
    :return:
    '''
    wb = openpyxl.load_workbook(path)
    wb.create_sheet(sheet)
    ws = wb[sheet] #该功能可以直接获取指定的sheet表,需要屏蔽掉上一步create_sheet

    for ss in value:
        ws.append(ss)#不覆盖原数据
        ws.cell() #覆盖原数据
    wb.save(path)
    print("写入成功")


def main():
    value1 = [["标题1", "标题2", "标题3"],
              ["a", "b", "c"],
              ["1", "2", "3"]]
    writeExcel("sss.xlsx", value1,sheet="sheet1")
    path = "sss.xlsx"
    value2 = [["a", "b", "v"], ["ss", "bbb", "vvv"]]

    addExcel(path, value2, sheet="sheet2")


#打开文件:
from openpyxl import load_workbook
excel=load_workbook('E:/test.xlsx')
#获取sheet:
table = excel.get_sheet_by_name('Sheet1')   #通过表名获取  
#获取行数和列数:
rows=table.max_row   #获取行数
cols=table.max_column    #获取列数
#获取单元格值:
Data=table.cell(row=row,column=col).value  #获取表格内容,是从第一行第一列是从1开始的,注意不要丢掉 .value
#通过名字
    ws = wb["frequency"] 
    #等同于 ws2 = wb.get_sheet_by_name('frequency')
    #不知道名字用index
    sheet_names = wb.get_sheet_names()
    ws = wb.get_sheet_by_name(sheet_names[index])# index为0为第一张表 
#或者
    ws =wb.active
   # 等同于  ws = wb.get_active_sheet() #通过_active_sheet_index设定读取的表,默认0读第一个表
    #活动表表名
   wb.get_active_sheet().title

if __name__ == '__main__':
    main()

相关推荐

网易用户中心官网(网易用户中心官网注册账号)

要登录网易个人中心的话,首先你网易要有自己的账户。你可以搜索一下网易的官方链接,打开以后先注册,注册成功了以后你就可以进到个人中心了,上面也可以做一些设置或修改你的密码之类的。然后你就可以多看一下,看...

windows defender怎么关闭win11

1.启用或禁用WindowsDefender的实时保护可以通过设置打开或者关闭某些模块(例如实时保护)的选项。第一步,右键点击开始菜单--设置或者按住WIN+I(大写的i)快捷键...

无法识别硬盘(无法识别硬盘怎么解决)

1.有可能可以修复2.因为硬盘无法识别可能是由于硬盘本身的故障或者连接线松动等原因导致的,可以尝试更换连接线或者使用一些数据恢复软件进行修复。但是如果硬盘本身的故障比较严重,可能需要专业的数据恢复...

win10固态硬盘如何分区(win10固态硬盘分区多大合适)

可以按照以下步骤进行分区。1.打开“此电脑”或“文件资源管理器”,右击“此电脑”,选择“管理”。2.在计算机管理窗口中,选择“磁盘管理”,找到你的固态硬盘。3.右击固态硬盘,选择“新建简单卷”。...

博图v19(博图v19安装过程中出错)

 西门子博途(TIAPortal)是用于工程设计和编程的软件平台,博途V19和V18是该平台的不同版本。它们在功能、性能和用户体验上有一定的区别。以下是一些主要区别:1.新功能和性能提升...

小米怎么关闭自动更新(如何关闭小米自动更新系统)

  方法/步骤分享:  1、首先找到自己手机上的设置选项。  2、找到设置之后我们看到下面有一个我的设备选项。  3、在我的设备下面有一个miui版本,点击这个版本号后面的箭头。  4、进入到系统更新...

隐藏的文件夹怎么才能显示出来

你可以打开我的电脑,随便找一个盘符点进去,然后点击左上角的组织选项,找到文件和文件夹选项,然后会弹出一个列表,找到选项显示所有文件和文件夹,把前面的勾打上就可以了。1.在资源管理器中,打开文件夹属性...

恢复出厂设置有什么影响吗(恢复出厂设置对有影响吗)

基本上没什么危害。恢复出厂设置是一次大容量的数据读写,清除,存储过程,相对一般日常使用来说,只是会对电脑的整个硬件硬盘形成一次重大磨损过程,大容量的数据读写,清除,存储,会加快硬盘的老化,但对电脑本身...

计算机电脑怎么设置密码(计算机在哪设置密码)

一、帐户    打开电脑,点击电脑左下角的开始菜单,在弹出的界面里找到“设置(齿轮形状)”。点击齿轮图标后,就会进入Windows10系统的设置界面,...

win10密钥激活码大全专业版免费破解版

1不存在永久激活密钥,但可以使用一些有效期长的密钥去激活Win10专业版。2Windows10的激活方式是基于数字权利,当你购买Windows10时,系统会将您电脑的硬件信息和购买记录绑定在一起...

免费动态壁纸2025(免费动态壁纸2023)

如果你想取消2023动态壁纸,可以按照以下步骤操作:首先,在桌面上右键点击空白区域,选择“个性化”;接着,在弹出的窗口中选择“背景”,找到“壁纸”选项,选择“图片”;最后,在“壁纸”选项下面找到“浏览...

360游戏中心手机网页版(360网页游戏平台官网)

360游戏大厅的登录方法:首先,需要在应用程序中搜索并安装360手机卫士应用程序,然后打开应用程序并点击“账号与安全”选项,在页面中选择“360账号登录”并输入账号密码即可成功登录360帐号,然后点击...

重装系统怎样保留原来的软件

1、只装系统到C盘,只需要格式化C盘即可,其他盘的文件都不会清空。2、硬盘整个格式化,所有盘都需要重新分区,所有的数据都会丢失。另外,应用程序在重装系统后肯定是运行不了了,需要重装应用程序。你装的系统...

由于英语(由于生病,他不能来参加会议英语)
由于英语(由于生病,他不能来参加会议英语)

“因为”的英文短语:owingto、becauseof;“结果”的英文短语:intheendbecause读法英[b??k?z]美[b??k??z]conj.因为短语:1、justbecause正因为2、me...

2025-12-26 07:03 off999

手机应用占了100g怎么清除(手机应用占了100g怎么清除缓存)
手机应用占了100g怎么清除(手机应用占了100g怎么清除缓存)

你下载的app太多,而且每个app都是有缓存的。长时间下来数据多了那么手机的内存也就小了首先,可以尝试清理应用缓存和垃圾文件,可以通过在设置中找到“存储”选项,选择“清除缓存”和“清除垃圾文件”来进行清理。其次,可以卸载一些不常用的应用程序...

2025-12-26 06:51 off999

取消回复欢迎 发表评论: