Python电子表格用户指南
Excel是最著名的电子表格软件,几乎每个电脑用户都习惯于通过电子表格管理数据。最终,一些Python程序必须与Excel进行交互。许多Python库可用于创建、读取和写入Excel文件。我们将在下面看到一些重要库的示例。
使用openpyxl
此库可以读取/写入Excel 2010 xlsx/xlsm/xltx/xltm文件。在下面的示例中,我们创建一个Excel工作表,将其数据分配给单元格,最后将文件保存到所需位置。该模块具有许多内置方法,可用于此目的。我们将在下面看到这些方法的使用。
示例
#openpyxl
from openpyxl import Workbook
Spreadsheet = Workbook()
# grab the active worksheet
worksheet = Spreadsheet.active
# Data can be assigned directly to cells
worksheet['A1'] = 50
# Rows can also be appended
worksheet.append([5, 15, 25, 35, 45, 55])
worksheet.append([9, 19, 29, 39, 49, 59])
# Python types will automatically be converted
import datetime
t1 = datetime.datetime.now()
worksheet['A1'] = t1.year
worksheet['A2'] = t1
# Save the file
Spreadsheet.save("E:\openpyxl.xlsx")输出
运行以上代码将得到以下结果:
使用xlwt
这是一个库,开发人员可以使用它来生成与Microsoft Excel 95到2003版本兼容的电子表格文件。我们不仅可以将值写入单元格,还可以格式化值。值可以设置为粗体、彩色、斜体等。还可以控制字体大小。在下面的示例中,我们对写入的数字进行格式化,并使其为蓝色。
示例
import xlwt
from datetime import datetime
Spreadsheet = xlwt.Workbook()
worksheet = Spreadsheet.add_sheet('Newsheet1')
format1 = xlwt.easyxf('font: name Times New Roman, color-index blue, bold on', num_format_str='#,##0.00')
format2 = xlwt.easyxf(num_format_str='D-MMM-YY')
worksheet.write(0, 0, datetime.now(), format2)
worksheet.write(0, 1, datetime.now().strftime("%B"),format2)
worksheet.write(0, 2, datetime.now().strftime("%A"),format2)
worksheet.write(1, 0, 5369.2, format1)
worksheet.write(1, 1, 1926.5,format1)
worksheet.write(1, 2, 4896.2,format1)
worksheet.write(2, 0, 5)
worksheet.write(2, 1, 10)
worksheet.write(2, 2, xlwt.Formula("A3+B3"))
Spreadsheet.save('E:\xlwt_spreadsheet.xls')输出
运行以上代码将得到以下结果:
使用xlsxwriter
此模块可以创建2007版本的Excel文件。它比上述创建Excel文件的模块具有更多功能。它可以将文本、数字、公式和超链接写入多个工作表。在下面的示例中,我们不仅对工作表中的文本进行格式化,还向工作表添加图像。
示例
import xlsxwriter
Spreadsheet = xlsxwriter.Workbook('E:\xlsxw_spreadsheet.xlsx')
sheet = Spreadsheet.add_worksheet()
sheet.set_column('A:A', 18)
# Add a bold format to use to highlight cells.
bold = Spreadsheet.add_format({'bold': True})
#simple text.
sheet.write('A1','Freelancer',bold)
sheet.write('A2', 'Work')
sheet.write('A3', 100)
sheet.write('A4', 1000)
sheet.write('B1', 'DECIMAL', bold)
sheet.write('B2', 17.1)
sheet.write('B3', 29.6)
sheet.write('B4', 45.9)
sheet.write('C1', 'POSITIVE',bold)
sheet.write('C2', 69)
sheet.write('C3', 53)
sheet.write('C4', 36)
sheet.write('D1','NEGATIVE',bold)
sheet.write('D2', -89)
sheet.write('D3', -26)
sheet.write('D4', -15)
# Insert an image.
sheet.insert_image('E5', 'E:\firefox.JPG')
Spreadsheet.close()输出
运行以上代码将得到以下结果:
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP