Computer >> Máy Tính >  >> Lập trình >> Python

Python cho người dùng bảng tính

Excel là bảng tính nổi tiếng nhất và hầu như mọi người dùng máy tính đều cảm thấy thoải mái với ý tưởng quản lý dữ liệu thông qua bảng tính. Cuối cùng, một số chương trình python phải tương tác với excel. Nhiều thư viện python có sẵn để tạo, đọc và ghi vào tệp excel. Chúng ta sẽ xem các ví dụ về một vài thư viện quan trọng như vậy bên dưới.

Sử dụng openpyxl

Thư viện này có thể đọc / ghi các tệp Excel 2010 xlsx / xlsm / xltx / xltm. Trong ví dụ dưới đây, chúng tôi tạo một trang tính excel, gán dữ liệu cho các ô của nó và cuối cùng lưu tệp vào vị trí mong muốn. Mô-đun có nhiều phương thức tích hợp có thể được sử dụng cho việc này. Chúng tôi thấy những phương pháp được sử dụng bên dưới.

Ví dụ

#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")

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Python cho người dùng bảng tính 

Sử dụng xlwt

Đây là thư viện dành cho các nhà phát triển sử dụng để tạo các tệp bảng tính tương thích với Microsoft Excel phiên bản 95 đến 2003. Chúng tôi không chỉ có thể ghi giá trị vào ô mà còn có thể định dạng giá trị. Các giá trị có thể được in đậm, tô màu, in nghiêng, v.v. Ngoài ra, kích thước phông chữ có thể được kiểm soát. Trong ví dụ dưới đây, chúng tôi định dạng các số được viết và làm cho chúng có màu xanh lam.

Ví dụ

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')

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Python cho người dùng bảng tính 

Sử dụng xlsxwriter

Mô-đun này có thể tạo tệp excel của phiên bản 2007. Nó có số lượng tính năng rộng hơn nhiều so với mô-đun tạo tệp excel ở trên. Nó có thể viết văn bản, số, công thức và siêu liên kết đến nhiều trang tính. Trong ví dụ dưới đây, chúng tôi không chỉ thực hiện định dạng văn bản trong trang tính mà còn thêm hình ảnh vào trang tính.

Ví dụ

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()

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

Python cho người dùng bảng tính