python的xlwt模塊


xlwt模塊用來設置xls。

一、安裝(此處用的是python3解析器)

pip3 install xlwt

二、設置字體

import xlwt

# 創建一個工作簿
xl = xlwt.Workbook(encoding='utf-8')
# 創建一個sheet對象,第二個參數是指單元格是否允許重設置,默認為False
sheet = xl.add_sheet('菜鳥的成長歷程', cell_overwrite_ok=False)
# 初始化樣式
style = xlwt.XFStyle()
# 為樣式創建字體
font = xlwt.Font()
font.name = 'Times New Roman'
# 黑體
font.bold = True
# 下划線
font.underline = False
# 斜體字
font.italic = True
# 設定樣式
style.font = font
# 第一個參數代表行,第二個參數是列,第三個參數是內容,第四個參數是格式
sheet.write(0, 0, '不帶樣式的攜入')
sheet.write(1, 0, '帶樣式的寫入', style)

# 保存文件
xl.save('C:\\Users\\15136\\Desktop\\字體.xls')

結果:

三、設置單元格寬度

import xlwt
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('單元格寬度', cell_overwrite_ok=True)
sheet.write(0, 0, '第一個行第一列內容')
sheet.col(0).width = 5000
xl.save('C:\\Users\\15136\\Desktop\\單元格寬度.xls')

結果:

四、將一個日期輸入一個單元格

import xlwt
import datetime
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('日期', cell_overwrite_ok=True)
# 初始化樣式
style = xlwt.XFStyle()
#  Other options: D-MMM-YY, D-MMM, MMM-YY, h:mm, h:mm:ss, h:mm, h:mm:ss, M/D/YY h:mm, mm:ss, [h]:mm:ss, mm:ss.0
style.num_format_str = 'M/D/YY'
sheet.write(0, 0, datetime.date.today(), style)
sheet.col(0).width = 5000
xl.save('C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls')

結果:

五、添加一個公式

import xlwt
xl = xlwt.Workbook(encoding='UTF-8')
sheet = xl.add_sheet('公式', cell_overwrite_ok=True)
# 第一行第一列
sheet.write(0, 0, 5)
# 第一行第二列
sheet.write(0, 1, 3)
sheet.write(0,2,xlwt.Formula('A1 * B1'))
sheet.write(1,0,xlwt.Formula("A1 + B1"))
xl.save("C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls")

結果:

六、在單元格中添加超鏈接

import xlwt

xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('超鏈接')
sheet.write(0, 0, xlwt.Formula('HYPERLINK("https://www.baidu.com";"百度")'))
xl.save("C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls")

結果:

七、合並列和行

import xlwt
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('合並列和行')
# (行,行,列,列,內容)
sheet.write_merge(0, 1, 0, 3, '合並從第一行到第二行,第一列到第四列')
font = xlwt.Font()  # 創建字體示例
font.bold = True  # bold設置為黑體字
style = xlwt.XFStyle()  # 初始化樣式
style.font = font
sheet.write_merge(2, 3, 0, 3, '合並從第三行到第四行,第一列到第四列', style)
xl.save('C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls')

結果:

八、單元格的對齊方式

import xlwt
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('單元格的對齊方式')
# 創建對齊格式對象
alignment = xlwt.Alignment()
# 左右的對其,水平居中 May be: HORZ_GENERAL, HORZ_LEFT, HORZ_CENTER,
# HORZ_RIGHT, HORZ_FILLED, HORZ_JUSTIFIED,
# HORZ_CENTER_ACROSS_SEL, HORZ_DISTRIBUTED
alignment.horz = xlwt.Alignment.HORZ_CENTER
# 上下對齊 May be: VERT_TOP, VERT_CENTER, VERT_BOTTOM, VERT_JUSTIFIED, VERT_DISTRIBUTED
alignment.vert = xlwt.Alignment.VERT_CENTER
style = xlwt.XFStyle()  # 創建一個樣式對象
style.alignment = alignment  # 將格式Alignment對象加入到樣式對象
sheet.write(0,0,'單元居中',style)
xl.save('C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls')

Alignment n. 結盟; 隊列,排成直線; 校直,調整; [工] 准線;

HORZ 水平的;地平式;

GENERAL 普遍的; 大致的; 綜合的; 總的,全體的;

FILLED 滿的; 填滿的; 充氣的; 加載的;

JUSTIFIED adj. 有正當理由的,合理的; 事出有因的;

DISTRIBUTED 分布式的;

VERT n. 森林中的草木,綠色; 傾側; 傾轉;

九、為單元格加邊框

import xlwt
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('單元格添加邊框')
# 創建邊框對象
borders = xlwt.Borders()
borders.left = xlwt.Borders.DASHED  # 對邊框對象進行操作,指定邊框上下左右的邊框類型為虛線
# DASHED虛線
# NO_LINE沒有
# THIN實線
# May be: NO_LINE, THIN, MEDIUM, DASHED, DOTTED, THICK, DOUBLE, HAIR, MEDIUM_DASHED, THIN_DASH_DOTTED, MEDIUM_DASH_DOTTED, THIN_DASH_DOT_DOTTED,
# MEDIUM_DASH_DOT_DOTTED, SLANTED_MEDIUM_DASH_DOTTED, or 0x00 through 0x0D.
borders.right = xlwt.Borders.DASHED
borders.top = xlwt.Borders.DASHED
borders.bottom = xlwt.Borders.DASHED
borders.left_colour = 0x40      #指定上下左右的邊框顏色為0x40
borders.right_colour = 0x40
borders.top_colour = 0x40
borders.bottom_colour = 0x40
style = xlwt.XFStyle()  # Create Style   #創建樣式對象
style.borders = borders  # 將設置好的邊框對象borders 加到樣式對象style中。
sheet.write(0, 0, '單元格內容', style)
sheet.write(1, 0, '單元格內容', style)
sheet.write(0, 1, '單元格內容', style)
sheet.write(1, 1, '單元格內容', style)
sheet.col(0).wigth = 4000
sheet.col(1).wigth = 4000
xl.save('C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls')

結果:

十、設置背景色

import xlwt
xl = xlwt.Workbook(encoding='utf-8')
sheet = xl.add_sheet('單元格背景色')
# 創建背景模式對像
pattern = xlwt.Pattern()
pattern.pattern = xlwt.Pattern.SOLID_PATTERN  # May be: NO_PATTERN, SOLID_PATTERN, or 0x00 through 0x12
pattern.pattern_fore_colour = 5 #設置模式顏色 May be: 8 through 63. 0 = Black, 1 = White, 2 = Red, 3 = Green, 4 = Blue, 5 = Yellow, 6 = Magenta, 7 = Cyan, 16 =
# Maroon, 17 = Dark Green, 18 = Dark Blue, 19 = Dark Yellow , almost brown), 20 = Dark Magenta, 21 = Teal, 22 = Light Gray, 23 = Dark Gray, the list goes on...
style = xlwt.XFStyle() # 創建樣式對象Create the Pattern
style.pattern = pattern # 將模式加入到樣式對象Add Pattern to Style
sheet.write(0, 0, '單元格內容', style)#向單元格寫入內容時使用樣式對象style
xl.save('C:\\Users\\15136\\Desktop\\菜鳥的成長歷程.xls')

結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM