詳解Python中xlwt庫的基本操作
xlwt 簡(jiǎn)介
xlwt 是一個(gè)用于在Python中操作Excel文件的庫。它允許用戶創(chuàng)建、修改和寫入Excel文件,支持設(shè)置單元格的格式、樣式等。以下是一些關(guān)鍵的特性和信息:
- 創(chuàng)建和寫入Excel文件:
xlwt允許用戶創(chuàng)建新的Excel文件并在其中寫入數(shù)據(jù)。這對(duì)于生成報(bào)表、導(dǎo)出數(shù)據(jù)等任務(wù)非常有用。 - 支持設(shè)置單元格樣式: 通過
xlwt,用戶可以設(shè)置單元格的字體、對(duì)齊方式、背景色等樣式,以使生成的Excel文件更具可讀性和美觀性。 - 支持多種數(shù)據(jù)類型:
xlwt支持多種數(shù)據(jù)類型,包括文本、數(shù)字、日期等,使用戶能夠以各種格式將數(shù)據(jù)寫入Excel文件。 - 兼容性: 該庫兼容 Excel 97-2003 文件格式(.xls),因此可以在較舊版本的Excel中使用。
- 使用簡(jiǎn)便:
xlwt提供了簡(jiǎn)單而直觀的接口,使得即使對(duì)于沒有豐富編程經(jīng)驗(yàn)的用戶也能輕松上手。
簡(jiǎn)單示例
以下是一個(gè)簡(jiǎn)單的示例,演示如何使用 xlwt 創(chuàng)建一個(gè)Excel文件并寫入數(shù)據(jù):
import xlwt
# 創(chuàng)建一個(gè)新的Excel文件和工作表
workbook = xlwt.Workbook()
sheet = workbook.add_sheet('Sheet1')
# 寫入數(shù)據(jù)到單元格
sheet.write(0, 0, 'Hello')
sheet.write(0, 1, 'World!')
# 保存文件
workbook.save('example.xls')二維列表數(shù)據(jù)寫入Excel(一)
按行存儲(chǔ)在list的數(shù)據(jù)寫入Excel
import xlwt
# 創(chuàng)建一個(gè)Workbook對(duì)象
workbook = xlwt.Workbook()
# 添加一個(gè)Sheet并設(shè)置其名稱
sheet = workbook.add_sheet('我的數(shù)據(jù)')
# 定義列表數(shù)據(jù)
data = [
['id', '姓名', '國(guó)家'],
[1.0, '曹操', '魏國(guó)'],
[2.0, '劉備', '蜀國(guó)'],
[3.0, '孫權(quán)', '吳國(guó)'],
[4.0, '荀彧', '魏國(guó)'],
[5.0, '諸葛亮', '蜀國(guó)'],
[6.0, '周瑜', '吳國(guó)'],
[7.0, '曹仁', '魏國(guó)'],
[8.0, '關(guān)羽', '蜀國(guó)'],
[9.0, '呂蒙', '吳國(guó)']
]
# 寫入數(shù)據(jù)到單元格
for i, row in enumerate(data):
for j, value in enumerate(row):
sheet.write(i, j, value,style)
# 保存Workbook到文件
workbook.save('output.xlsx')二維列表數(shù)據(jù)寫入Excel(二)
按列存儲(chǔ)在list的數(shù)據(jù)寫入Excel
import xlwt
# 創(chuàng)建一個(gè)Workbook對(duì)象
workbook = xlwt.Workbook()
sheet2 = workbook.add_sheet('我的數(shù)據(jù)2')
data=[
['id', 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0],
['姓名', '曹操', '劉備', '孫權(quán)', '荀彧', '諸葛亮', '周瑜', '曹仁', '關(guān)羽', '呂蒙'],
['國(guó)家', '魏國(guó)', '蜀國(guó)', '吳國(guó)', '魏國(guó)', '蜀國(guó)', '吳國(guó)', '魏國(guó)', '蜀國(guó)', '吳國(guó)']]
# 寫入數(shù)據(jù)到單元格
for i, row in enumerate(data):
for j, value in enumerate(row):
sheet2.write(j, i, value)
# 保存Workbook到文件
workbook.save('output2.xlsx')把pymysql獲取的結(jié)果集寫入Excel
獲取查詢的所有結(jié)果
results = cursor.fetchall()
獲取所有列名
column_names = [i[0] for i in cursor.description]
寫入數(shù)據(jù)到工作表中
for row_index, row in enumerate(results):
for col_index, value in enumerate(row):
# 判斷數(shù)據(jù)類型是否為時(shí)間類型
if isinstance(value, datetime.datetime):
value = value.strftime("%Y-%m-%d %H:%M:%S")
sheet.write(row_index + 1, col_index, value)完整代碼
import pymysql # 導(dǎo)入pymysql庫,用于連接MySQL數(shù)據(jù)庫
import xlwt # 導(dǎo)入xlwt庫,用于生成Excel文件
import datetime
# 建立數(shù)據(jù)庫連接
connection = pymysql.connect(
host='localhost', # 數(shù)據(jù)庫主機(jī)地址
user='root', # 數(shù)據(jù)庫用戶名
password='123456', # 數(shù)據(jù)庫密碼
database='caiwu' # 數(shù)據(jù)庫名稱
)
# 創(chuàng)建游標(biāo)對(duì)象
cursor = connection.cursor()
# 執(zhí)行SQL查詢
cursor.execute("SELECT * FROM report_品名 limit 10")
# 獲取所有結(jié)果
results = cursor.fetchall()
print(results)
# 獲取列名(即各個(gè)字段名)
column_names = [i[0] for i in cursor.description]
# 創(chuàng)建Excel工作簿
workbook = xlwt.Workbook()
# 創(chuàng)建工作表(即Excel中的sheet)
sheet = workbook.add_sheet('Sheet1')
# 寫入列名到工作表中
for col_index, column_name in enumerate(column_names):
sheet.write(0, col_index, column_name)
# 寫入數(shù)據(jù)到工作表中
for row_index, row in enumerate(results):
for col_index, value in enumerate(row):
# 判斷數(shù)據(jù)類型是否為時(shí)間類型
if isinstance(value, datetime.datetime):
value = value.strftime("%Y-%m-%d %H:%M:%S")
sheet.write(row_index + 1, col_index, value)
# 保存Excel文件
workbook.save('output.xls')
# 關(guān)閉數(shù)據(jù)庫連接
cursor.close()
connection.close()到此這篇關(guān)于詳解Python中xlwt庫的基本操作的文章就介紹到這了,更多相關(guān)Python xlwt庫內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python企業(yè)編碼生成系統(tǒng)之系統(tǒng)主要函數(shù)設(shè)計(jì)詳解
這篇文章主要介紹了Python企業(yè)編碼生成系統(tǒng)之系統(tǒng)主要函數(shù)設(shè)計(jì),涉及目錄操作、文件讀寫、驗(yàn)證判斷、編碼輸出等功能實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-07-07
Python入門教程(二十九)Python的RegEx正則表達(dá)式
這篇文章主要介紹了Python入門教程(二十九)Python的RegEx,RegEx 或正則表達(dá)式是形成搜索模式的字符序列。RegEx 可用于檢查字符串是否包含指定的搜索模式,需要的朋友可以參考下2023-04-04
python讀取eml文件并用正則表達(dá)式匹配郵箱的代碼
今天接到一個(gè)需求有一個(gè)同事離職了,但是留下了非常多的郵件,我需要將他的郵件進(jìn)行分類,只要郵件中以@xxx.com結(jié)尾的存放在文件夾中,否則放在另一個(gè)文件夾中,這篇文章主要介紹了python讀取eml文件并用正則匹配郵箱,需要的朋友可以參考下2022-11-11
Django中信號(hào)signals的簡(jiǎn)單使用方法
這篇文章主要給大家介紹了關(guān)于Django中信號(hào)signals的簡(jiǎn)單使用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Django具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
使用python的turtle函數(shù)繪制一個(gè)滑稽表情
Turtle庫是Python語言中一個(gè)很流行的繪制圖像的函數(shù)庫,今天通過實(shí)例代碼給大家分享使用python的turtle函數(shù)繪制一個(gè)滑稽表情,一起看看吧2020-02-02
Python數(shù)據(jù)分析神器DuckDB保姆級(jí)使用入門指南
DuckDB被譽(yù)為數(shù)據(jù)分析界的SQLite,以安裝極其簡(jiǎn)單、運(yùn)行速度飛快、直接查詢文件而著稱,本文將帶你從零開始,掌握這個(gè)?Python?辦公自動(dòng)化領(lǐng)域的新晉頂流吧2026-01-01
nlp自然語言處理學(xué)習(xí)CBOW模型類實(shí)現(xiàn)示例解析
這篇文章主要為大家介紹了nlp自然語言處理學(xué)習(xí)CBOW模型類實(shí)現(xiàn)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04

