gpt4 book ai didi

python - openpyxl 将数字格式设置为单元格但不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 21:18:40 35 4
gpt4 key购买 nike

我想通过从 csv 文件读取数据来创建 Excel。所以,我在 python 中使用 Openpyxl 和 CSV。但是,无论 number_format 我放入代码中,csv 中的单元格值仍保持“文本”格式

from openpyxl import load_workbook
import csv
from openpyxl.styles import numbers

ws= load_workbook('myworkbook.xlsx')
with open("myfile.csv", "r", newline="", encoding="utf16") as f:
mydata=csv.reader(f,delimiter='|')
for row in mydata:
for col_index,col_data in enumerate(row,3):
ws.cell(row=new800row_count, column=col_index, value=col_data).number_format = numbers.FORMAT_NUMBER

假设我的 csv 文件包含 800、200、100 个数据值。使用我上面的代码后。它没有以数字格式(Excel)显示 800、200、100,而是告诉我该单元格包含存储为文本的数字,即使实际的 Excel 格式告诉我这是一个数字

感谢您提前提供的任何帮助。

最佳答案

循环数据集,如果数据是字符串,则将数据转换为 float :

str = '1234.0'
data = float(str)
row[col] = data
row[col].number_format = '#,##0.00'

最后一行代码确保其格式为数字。进行上述更改后,不要忘记保存文件。

关于python - openpyxl 将数字格式设置为单元格但不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54489684/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com