對excel表格資料新增樣式
阿新 • • 發佈:2021-10-25
1.首先將資料寫入到excel
import csv
import xlwt
def write_data_to_excel(unique_data_list): """unique_data_list:[{},{},{}]""" header_list = [] for heades in list(unique_data_list[0].keys()): header_list.append(heades) with open('test.csv','a',newline='',encoding='utf-8') as f: writer= csv.DictWriter(f, fieldnames=header_list) writer.writeheader() for temp_dict in unique_data_list: temp_list = [] temp_list.append(temp_dict) # writer.writerows(unique_data_list) writer.writerows(temp_list)
2.建立excel各種樣式
#1 建立單元格背景顏色樣式(顏色可自行查閱對應的數字編號,下面字型同理)
def create_bg_style(): #建立一個樣式物件,初始化樣式 style style = xlwt.XFStyle() #設定背景顏色 pattern = xlwt.Pattern() pattern.pattern = xlwt.Pattern.SOLID_PATTERN pattern.pattern_fore_colour = 4 style.pattern = pattern # 將背景顏色加到表格樣式中 return style
#2 設定字型樣式
def create_font_style():"""設定字型樣式""" style = xlwt.XFStyle() font = xlwt.Font() font.name = 'Calibri' #設定字型 font.colour_index = 4 #設定字型顏色 font.height = 400 #字型大小 font.bold = True #字型是否為粗體 font.italic = True #字型是否為斜體 font.underline = True #字型是否有下滑線 style.font = font return style
#3 設定水平位置
def set_position(): """設定位置""" style = xlwt.XFStyle() alignment = xlwt.Alignment() alignment.horz = 1 #設定水平位置,0是左對齊,1是居中,2是右對齊 #設定自動換行 alignment.wrap = 1 style.alignment = alignment
#4 設定邊框
def set_border(): """設定邊框""" style = xlwt.XFStyle() borders = xlwt.Borders() #DASHED虛線, NO_LINE沒有,THIN實線 borders.left = xlwt.Borders.DASHED borders.right = xlwt.Borders.DASHED borders.top = xlwt.Borders.DASHED borders.bottom = xlwt.Borders.DASHED borders.left_colour = 1 borders.right_colour = 1 borders.top_colour = 1 borders.bottom_colour = 1 style.borders = borders