gpt4 book ai didi

python - openpyxl:读取 $ 和 .来自 xlsx

转载 作者:行者123 更新时间:2023-12-01 04:12:42 25 4
gpt4 key购买 nike

我想使用 python 将 xlsx 文件转换为制表符分隔的 csv。阅读后,我被指向名为 openpyxl 的库(代码如下)

def importXLSX(fileName):
temp = os.path.basename(fileName).split('.xlsx')
tempFileName = os.path.dirname(os.path.abspath(fileName))+"/TEMP_"+temp[0]+".csv"
tempFile = open(tempFileName,'w')
wb = load_workbook(filename=fileName)
ws = wb.worksheets[0] #Get first worksheet
for row in ws.rows: #Iterate over rows
for cell in row:
cellValue = ""
if cell.value is not None:
cellValue = cell.value
tempFile.write(cellValue+'\t')
tempFile.write('\n')
os.remove(fileName)
return tempFileName

我的输入文件包含账单数据,但此函数将 $2,000 转换为 2000,将 0.00 转换为 0强>

知道为什么吗?

最佳答案

这是因为在 Excel 中,当您将单元格的格式设置为例如货币格式,因此值 2000 显示为 $2000.00,您没有更改单元格中的值,并且 openpyxl 正在读取单元格中的值,而不是其格式化/显示的演示文稿。如果您在单元格中输入了字符串“$2000.00”,那么 openpyxl 就会看到该字符串。类似地,对于显示两位小数的显示格式,因此 0 显示为 0.00,单元格中的仍然是 0,所以这就是 openpyxl 看到的。

关于使用 xlrd 库而不是 openpyxl 读取单元格格式还有其他问题:例如参见 How to get Excel cell properties in PythonIdentifying Excel Sheet cell color code using XLRD package一般来说,谷歌python excel读取单元格格式

关于python - openpyxl:读取 $ 和 .来自 xlsx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34680232/

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