python - xlsxwriter - 根据列名定义列格式
问题描述
如何根据 xlsxwriter 中的列名定义列的表单。
例如,当列名是Sale_Date我想定义date_format而如果列名是count_of_sales我想使用number_format
我知道如何为特定列定义格式,但我不确定如何根据列名定义它,如下所示。
date_format = workbook.add_format({'num_format': 'dd/mm/yyyy hh:mm:ss', 'font_size': 14})
worksheet1.write('A1', 'Sale_Date', date_format)
任何人都可以建议。谢谢..
更新:
# create an output stream
output = BytesIO()
writer = pd.ExcelWriter(output, engine='xlsxwriter')
# Create the workbook
workbook = writer.book
# Create and name the sheets
worksheet = workbook.add_worksheet('Cover Sheet')
worksheet1 = workbook.add_worksheet('Sample Data')
# Number formatting
number_format = workbook.add_format({'num_format': '####', 'font_size': 14})
date_format = workbook.add_format({'num_format': 'dd/mm/yyyy hh:mm:ss', 'font_size': 14})
for col in field_names:
worksheet1.write('A1', col, date_format if 'created_at' in col else number_format)
# Defining Cover sheet format
worksheet.set_column('A:BZ', None, color_format)
# # header column
row = 0
col = 0
for data in title:
worksheet1.write(row, col, data, number_format)
col += 1
#Pulling monthly data for columns for weekly raw data sheet
current_row = 1
for values in output_file:
for idx, value in enumerate(values):
worksheet1.write(current_row, idx, value, number_format)
current_row += 1
# the writer has done its job
writer.close()
# go back to the beginning of the stream
output.seek(0)
# finally return the file
return output
示例列列表:
name, age,class,join_date,date_of_birth,filing_date
解决方案
推荐阅读
- javascript - CSP 配置不允许正确加载资产
- javascript - NetSuite 脚本在另一个中复制行字段
- flutter - 如何在没有特定结构的情况下提取特定的 json 字段
- detox - Detox 支持 Apple TV 模拟器吗?
- d3.js - 如何在 nivo 折线图上实现该功能?
- jboss - 在 Jboss 7 上添加用户时出现异常
- android - Jetpack Compose 中的延迟滚动
- docker - docker cp 在运行实例上抛出“没有这样的容器:路径”
- node.js - 无法在 Windows 上使用 fs 写入文件
- c# - 为什么 JsonConverter 忽略 WriteIndented 选项?