推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
grewer
V2EX  ›  Python

Python openpyxl 样式问题

  •  
  •   grewer · Mar 27, 2018 · 4910 views
    This topic created in 3112 days ago, the information mentioned may be changed or developed.

    我这边想复制 模板 xlsx 的格式出来重新生成一个文,但是只运行下面几行代码:

    wb = load_workbook('./template.xlsx')
    ws = wb['Sheet1']
    wb.save('output/test.xlsx')
        
    

    新生成的单元格的填充色已经和原模板不对了,请假下各位大佬,怎么样才能生成正确的样式

    详细说明: 原模板单元格填充色是绿色 生成后没颜色了 只运行了上述代码

    这边的环境:
    Python:2.7.10 openpyxl:2.5.1 操作系统:mac

    5 replies  •  2018-03-28 11:18:17 +08:00
    Tink
        1
    Tink  
       Mar 27, 2018 via iPhone
    openpyxl 需要对单元格进行单独样式定义,文档里有详细说明
    grewer
        2
    grewer  
    OP
       Mar 27, 2018
    @Tink 但是原来单元格颜色是粉红的 怎么就变成了蓝色 ,按理说应该也是没有颜色的呀
    omph
        3
    omph  
       Mar 27, 2018
    这个问题碰到过,我个人的结论是原文件单元格的颜色值不规范。当然也有可能是库的兼容性不好
    你可以把单元格的颜色值打印出来看看
    holajamc
        4
    holajamc  
       Mar 27, 2018
    我也有遇到过,是 office 版本的问题(可能仅局限于我
    以及一楼说明了对单元格进行单独样式定义,我的做法是复制(如果有更好的办法请 @
    grewer
        5
    grewer  
    OP
       Mar 28, 2018
    我发现是读取的时候就有问题,也许是库的原因,也许是不兼容,比如我每个单元格都是有 border 的但是打印出来 border 都是 None
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2243 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 06:21 · PVG 14:21 · LAX 23:21 · JFK 02:21
    ♥ Do have faith in what you're doing.