亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python之如何使用openpyxl設(shè)置單元格樣式

 更新時(shí)間:2023年06月21日 10:50:04   作者:阿濤的一天  
這篇文章主要介紹了python之如何使用openpyxl設(shè)置單元格樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

引言

在pandas保存多個(gè)excel表格的時(shí)候,有時(shí)單元格中的內(nèi)容很多,預(yù)覽的時(shí)候不方便查看,這時(shí)候我們需要修改單元格的寬高及換行顯示

下面直接來(lái)看代碼

import pandas as pd
import datetime
df = pd.read_excel('測(cè)試.xlsx')
grouped = df.groupby(['部門'])
current_time = datetime.datetime.now()
current_time = current_time.strftime('%m%d')
print(current_time)
name_list = []
for dtype,group in grouped:
    if "/" in dtype:
        dtype = dtype.replace("/","-")
    group.to_excel(f"./demand/{dtype}{current_time}.xlsx",index = False)
    name_list.append(f"./demand/{dtype}{current_time}.xlsx")

這段代碼先將測(cè)試表格拆分為多個(gè)表格,并且拿到各部門的表格name。

def format_xlsx(file_path):
    import os
    from openpyxl import load_workbook
    from openpyxl.utils import get_column_letter
    from openpyxl.styles import PatternFill, Alignment, Side, Border
    from openpyxl.styles import Font, Color, colors, Border, Side, Alignment
    wb = load_workbook(file_path)
    # 打開工作表
    ws = wb.active
    #設(shè)置單元格邊框的線條樣式
    border_set = Border(left=Side(style='thin', color=colors.BLACK),  # 左邊框
                    right=Side(style='thin', color=colors.BLACK),  # 右邊框
                    top=Side(style='thin', color=colors.BLACK),  # 上邊框
                    bottom=Side(style='thin', color=colors.BLACK))  # 下邊框
    #設(shè)置單元格內(nèi)容對(duì)齊方式
    for i in ws:
        for j in i:
#             print(j,type(j))
            j.alignment = Alignment(horizontal='center', vertical='center',wrapText = True)
    		j.border = border_set
    #設(shè)置單元格寬高
    width = 50
    height = 80
#     height = width * (2.2862 / 0.3612)
    for i in range(2, ws.max_row+1):
        ws.row_dimensions[i].height = height
    for i in range(1, ws.max_column+1):
        ws.column_dimensions[get_column_letter(i)].width = width
    wb.save(file_path)

然后定義一個(gè)format函數(shù),來(lái)對(duì)sheet頁(yè)進(jìn)行格式化。

ws為worksheet,即單個(gè)sheet頁(yè),嵌套遍歷時(shí),i為列遍歷的整列[“A”]、[“B”]、[“C”]…然后再行遍歷,得到的就是[“A1”][“B1”][“C1”]…等所有的單元格cell。

這里設(shè)置了三個(gè)參數(shù),水平居中”horizontal“,垂直居中”vertical”,還有一個(gè)換行顯示“wrapText”。

然后是設(shè)置單元格的寬高

分別循環(huán)去獲取有數(shù)據(jù)的單元格的最大長(zhǎng)度,注意:這里的openpyxl庫(kù)循環(huán)遍歷時(shí)首個(gè)元素的下標(biāo)為1而不是0,而行我們是從第二行開始設(shè)置的,原因是表頭一般都會(huì)單獨(dú)設(shè)置醒目樣式以區(qū)分表體。

下面是操作截圖

初始表

生成表

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中的面向接口編程示例詳解

    Python中的面向接口編程示例詳解

    這篇文章主要給大家介紹了關(guān)于Python中面向接口編程的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Django中如何使用celery異步發(fā)送短信驗(yàn)證碼詳解

    Django中如何使用celery異步發(fā)送短信驗(yàn)證碼詳解

    Celery是Python開發(fā)的分布式任務(wù)調(diào)度模塊,這篇文章主要給大家介紹了關(guān)于Django中如何使用celery異步發(fā)送短信驗(yàn)證碼的相關(guān)資料,主要內(nèi)容包括基礎(chǔ)介紹、工作原理、完整代碼等方面,需要的朋友可以參考下
    2021-09-09
  • Python實(shí)現(xiàn)自動(dòng)化表單填寫功能

    Python實(shí)現(xiàn)自動(dòng)化表單填寫功能

    在Python中,自動(dòng)化表單填寫可以通過(guò)多種庫(kù)和工具實(shí)現(xiàn),本文將詳細(xì)介紹常用的自動(dòng)化表單處理工具,并對(duì)它們進(jìn)行橫向比較,可根據(jù)需求選擇合適的工具,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2025-03-03
  • python中if的基礎(chǔ)用法(if?else和if?not)

    python中if的基礎(chǔ)用法(if?else和if?not)

    if在Python中用作某個(gè)條件或值的判斷,下面這篇文章主要給大家介紹了關(guān)于python中if的基礎(chǔ)用法,主要包括if?else和if?not,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • Python常用模塊函數(shù)代碼匯總解析

    Python常用模塊函數(shù)代碼匯總解析

    這篇文章主要介紹了Python常用模塊函數(shù)代碼匯總解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • python的繼承詳解

    python的繼承詳解

    這篇文章主要介紹了Python中繼承的的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2021-10-10
  • python面向?qū)ο髮?shí)現(xiàn)名片管理系統(tǒng)文件版

    python面向?qū)ο髮?shí)現(xiàn)名片管理系統(tǒng)文件版

    這篇文章主要為大家詳細(xì)介紹了python面向?qū)ο髮?shí)現(xiàn)名片管理系統(tǒng)文件版,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • django queryset 去重 .distinct()說(shuō)明

    django queryset 去重 .distinct()說(shuō)明

    這篇文章主要介紹了django queryset 去重 .distinct()說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • Python的數(shù)據(jù)結(jié)構(gòu)與算法的隊(duì)列詳解(3)

    Python的數(shù)據(jù)結(jié)構(gòu)與算法的隊(duì)列詳解(3)

    這篇文章主要為大家詳細(xì)介紹了Python的隊(duì)列,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • Scrapy爬蟲框架集成selenium及全面詳細(xì)講解

    Scrapy爬蟲框架集成selenium及全面詳細(xì)講解

    這篇文章主要為大家介紹了Scrapy集成selenium,以及scarpy爬蟲框架全面講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2022-04-04

最新評(píng)論