我正在将一些数据从xslx文件导入Django模型。
除了如果单元格具有“上标”或“下标”的格式之外,一切都完美无缺。
有没有办法保留单元格中值的样式格式?
m 2 变得简单m2
答案 0 :(得分:1)
如果我在xlsx文件中打开xml,我会看到标签vertAlign val =“superscript”
评论:我必须使用Python 2和openpyxl 2.2。并且单元格值不只是'2'或'3'它是'm ^ 2'或'm ^ 3'或者什么,
这是字符格式,您无法将字符格式传递给Django。 只有 ^ 2或^ 3 的值。
例如,这会有所帮助:
import re
if vertAlign == superscript:
value = re.sub('\^2', '²', cell.value)
value = re.sub('\^3', '³', value)
这会将所有模拟 superscipt(2 | 3)更改为unicode(²|³)。
使用Python测试:3.4.2 - openpyxl:2.4.1 - LibreOffice:4.3.3.2
还应该使用 Python 2和openpyxl 2.2 。