use*_*221 6 styles colors cell openpyxl
我刚刚从openpyxl 1.6.2升级到2.02,并且有关于设置单元格颜色的问题.
该样式的功能应该处理所有必要的格式,而且包括使用填充功能来设置单元格颜色.后一个函数将fill_type作为其参数之一.如何将其设置为实心填充?在以前的版本中,这是使用以下内容完成的:
mycell.style.fill.fill_type = Fill.FILL_SOLID
Run Code Online (Sandbox Code Playgroud)
看起来正在进行的文档似乎建议设置fill_type = Fill.FILL_SOLID来完成这一操作(向下滚动到页面底部的注释).但是我在尝试时遇到了AttributeError.
from openpyxl.styles import Fill, Color
from openpyxl.styles.colors import RED
redfill = Fill(fill_type=Fill.FILL_SOLID,start_color=RED)
Traceback (most recent call last):
File "<pyshell#20>", line 1, in <module>
redfill = Fill(fill_type=Fill.FILL_SOLID,start_color=RED)
AttributeError: type object 'Fill' has no attribute 'FILL_SOLID'
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
一旦创建了一个样式是不可变的,你必须构造一个新的样式并将它分配给cell style属性,如下所示:
mycell.style = Style(fill=PatternFill(patternType='solid', fgColor=Color('FFFF0000')))
Run Code Online (Sandbox Code Playgroud)
这将使细胞变红.
常量现在是模块而不是类常量.
from openpyxl.styles import fills, PatternFill
fill = PatternFill(patternType=fills.FILL_SOLID)
Run Code Online (Sandbox Code Playgroud)
虽然我认为使用起来更容易 patternType='solid'