首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不尊重number_format的StyleFrame插件

不尊重number_format的StyleFrame插件
EN

Stack Overflow用户
提问于 2020-12-11 04:06:12
回答 1查看 248关注 0票数 1

无论我尝试过什么,StyleFrame似乎都坚持将所有日期格式化为DD/MM/YYYY格式。我正在尝试将它们格式化为MM/DD/YYYY。

我试图使用number_format来控制它,但在生成的Excel文件中它似乎被完全忽略了。我已经能够成功地应用许多其他类型的样式,例如字体大小、文本对齐和列宽,但它似乎忽略了number_format。

具体地说,我正在尝试这样做:

代码语言:javascript
复制
sf = StyleFrame(exampleDataFrame)
sf.apply_column_style(cols_to_style=['Start Date', 'End Date'],
                  width=35, styler_obj=Styler(number_format='MM/DD/YYYY', font_size=10))

宽度和字体大小按预期应用,但不应用日期格式。

EN

回答 1

Stack Overflow用户

发布于 2020-12-11 07:20:39

StyleFrame似乎坚持将所有日期格式化为DD/MM/YYYY

这是正确的,这是由于样式过程设计中的一些疏忽。

在正式修复之前,一种解决办法是覆盖date (或datetime)对象的基础默认样式。遗憾的是,这不提供对特定列的控制,必须在创建StyleFrame对象之前完成。

我将为此创建一个github问题,以便在将来研究它。

代码语言:javascript
复制
import pandas as pd
from styleframe import StyleFrame, utils

df = pd.DataFrame({'a': ['11/12/2020']})
df['a'] = pd.to_datetime(df['a'])

orig_date_time_format = utils.number_formats.default_date_time_format
utils.number_formats.default_date_time_format = 'YYYYMMDD'
sf = StyleFrame(df)
sf.to_excel('test.xlsx').save()
utils.number_formats.default_date_time_format = orig_date_time_format

这将导致单元格中出现20201112

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65241561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档