日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python openpyxl讀取單元格字體顏色過程解析

系統 1884 0

問題

我試圖打印some_cell.font.color.rgb并得到各種結果。

對于一些人,我得到了我想要的東西(比如“ FF000000”),但對于其他人,它給了我Value must be type 'basetring'。我假設后者是因為我實際上沒有為這些單元格定義字體顏色。

我正在使用openpyxl 2.2.2

解決方案

我認為這是openpyxl中的一個錯誤,我認為你應該在這里報告。

調試以下代碼(當然使用trepan3k):

            
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
c = ws['A4'] # cell gets created here
print(ws['A4'].font.color)
          

我明白了:

            
Color(rgb=Value must be type 'str', indexed=Value must be type 'int', auto=Value must be type 'bool', theme=1, tint=0.0, type='theme')
          

這來自文件中類Typed()的_repr_() openpyxl/descriptors/base.py 。未初始化值時會給出此消息。請注意,“indexed”和“auto”也未設置。

但是這些應該ws['a4']是在執行訪問代碼時設置的。

注意:消息中的細微差別:'str'而不是'basestring'可能歸因于我使用Python 3或不太可能使用openpyxl 2.2.3

如果我應該在我的示例中添加其他一些額外的代碼,那么至少https://openpyxl.readthedocs.org/en/latest/index.html應該表明這一點。

另請參見openpyxl單元格樣式未正確報告其中一個開發人員似乎在這么多單詞中說同樣的事情。

編輯:

其他一些事情可能值得關注。首先,您可以設置一個值然后讀取它,例如您可以這樣做:

            
c.font.color.rgb = "FF000000"
          

其次,如果您c.font.color.rgb在布爾值中測試,它將看起來像已設置的值。那是

            
if c.font.color: print("yes")
          

將打印“是”。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 即墨市| 东乡族自治县| 福海县| 大方县| 通辽市| 安达市| 万载县| 舟山市| 珲春市| 谢通门县| 清河县| 黄大仙区| 岳池县| 阳江市| 新野县| 施甸县| 清流县| 历史| 奉新县| 中山市| 门头沟区| 聊城市| 桃源县| 营山县| 绥德县| 九龙城区| 阿拉善右旗| 阿瓦提县| 托克逊县| 遵义县| 彭州市| 稻城县| 东至县| 临沭县| 抚远县| 迁西县| 荥经县| 郸城县| 门头沟区| 宜昌市| 聂拉木县|