Reading and writing Excel documents with Python
本篇文章给大家分享的是用Python读写Excel文档 ,有需要的朋友可以参考一下文中的内容
1.读取Excel(需要安装xlrd):
import xlrd fname = "reflect.xls" bk = xlrd.open_workbook(fname) shxrange = range(bk.nsheets) try: sh = bk.sheet_by_name("Sheet1") except: print "no sheet in %s named Sheet1" % fname #获取行数 nrows = sh.nrows #获取列数 ncols = sh.ncols print "nrows %d, ncols %d" % (nrows,ncols) #获取第一行第一列数据 cell_value = sh.cell_value(1,1) #print cell_value row_list = [] #获取各行数据 for i in range(1,nrows): row_data = sh.row_values(i) row_list.append(row_data)
2.写入Excel(需安装pyExcelerator)
from pyExcelerator import * w = Workbook() #创建一个工作簿 ws = w.add_sheet('Hey, Hades') #创建一个工作表 ws.write(0,0,'bit') #在1行1列写入bit ws.write(0,1,'huang') #在1行2列写入huang ws.write(1,0,'xuan') #在2行1列写入xuan w.save('mini.xls') #保存
3.再举个自己写的读写Excel的例子
读取reflect.xls中的某些信息进行处理后写入mini.xls文件中。
import xlrd from pyExcelerator import * w = Workbook() ws = w.add_sheet('Sheet1') fname = "reflect.xls" bk = xlrd.open_workbook(fname) shxrange = range(bk.nsheets) try: sh = bk.sheet_by_name("Sheet1") except: print "no sheet in %s named Sheet1" % fname nrows = sh.nrows ncols = sh.ncols print "nrows %d, ncols %d" % (nrows,ncols) cell_value = sh.cell_value(1,1) #print cell_value row_list = [] mydata = [] for i in range(1,nrows): row_data = sh.row_values(i) pkgdatas = row_data[3].split(',') #pkgdatas.split(',') #获取每个包的前两个字段 for pkgdata in pkgdatas: pkgdata = '.'.join((pkgdata.split('.'))[:2]) mydata.append(pkgdata) #将列表排序 mydata = list(set(mydata)) print mydata #将列表转化为字符串 mydata = ','.join(mydata) #写入数据到每行的第一列 ws.write(i,0,mydata) mydata = [] row_list.append(row_data[3]) #print row_list w.save('mini.xls')
4.需要根据Excel文件中满足特定要求的apk的md5值来从服务器获取相应的apk样本,这样做:
import xlrd import os import shutil fname = "./excelname.xls" bk = xlrd.open_workbook(fname) shxrange = range(bk.nsheets) try: #打开Sheet1工作表 sh = bk.sheet_by_name("Sheet1") except: print "no sheet in %s named Sheet1" % fname #获取行数 nrows = sh.nrows #获取列数 ncols = sh.ncols #print "nrows %d, ncols %d" % (nrows,ncols) #获取第一行第一列数据 cell_value = sh.cell_value(1,1) #print cell_value row_list = [] #range(起始行,结束行) for i in range(1,nrows): row_data = sh.row_values(i) if row_data[6] == "HXB": filename = row_data[3]+".apk" #print "%s %s %s" %(i,row_data[3],filename) filepath = r"./1/"+filename print "%s %s %s" %(i,row_data[3],filepath) if os.path.exists(filepath): shutil.copy(filepath, r"./myapk/")
使用xlwt3进行Excel文件的写操作:
import xlwt3 if __name__ == '__main__': datas = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h']]#二维数组 file_path = 'D:\\test.xlsx' wb = xlwt3.Workbook() sheet = wb.add_sheet('test')#sheet的名称为test #单元格的格式 style = 'pattern: pattern solid, fore_colour yellow; '#背景颜色为黄色 style += 'font: bold on; '#粗体字 style += 'align: horz centre, vert center; '#居中 header_style = xlwt3.easyxf(style) row_count = len(datas) col_count = len(datas[0]) for row in range(0, row_count): col_count = len(datas[row]) for col in range(0, col_count): if row == 0:#设置表头单元格的格式 sheet.write(row, col, datas[row][col], header_style) else: sheet.write(row, col, datas[row][col]) wb.save(file_path)
输出的文件内容如下图:
挺容易的吧!那么,快来试试!
相关推荐:
Python读写sqlite3数据库的方法并且将数据写入Excel的实例详解
The above is the detailed content of Reading and writing Excel documents with Python. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Regarding the problem of removing the Python interpreter that comes with Linux systems, many Linux distributions will preinstall the Python interpreter when installed, and it does not use the package manager...

Pylance type detection problem solution when using custom decorator In Python programming, decorator is a powerful tool that can be used to add rows...

About Pythonasyncio...

Using python in Linux terminal...

Loading pickle file in Python 3.6 environment error: ModuleNotFoundError:Nomodulenamed...

Compatibility issues between Python asynchronous libraries In Python, asynchronous programming has become the process of high concurrency and I/O...

Error loading Pickle file in Python 3.6 environment: ModuleNotFoundError:Nomodulenamed...

The problem and solution of the child process continuing to run when using signals to kill the parent process. In Python programming, after killing the parent process through signals, the child process still...
