2024-09-30 22:14:29 发布
网友
在保持指数值的同时,如何隐藏包含扩展ascii的字符串来表示一个幂次的数字?例如,如果字符串是'm\xb3/h',表示立方米每小时,我想返回字符串'm3/h'。或“m\xb2”应返回“m2”。在
守则-
varUnit = 'm\xb3/h' varUnit.decode('ascii', 'ignore').endcode('ascii') print varUnit
返回'm/h',而需要'm3/h'。在
首先要知道的是没有一个“扩展ascii”。Ascii的扩展方式有很多种。快速测试表明你想要“拉丁语1”或“cp1252”。因此,首先,将其转换为unicode(一种存储任何字符的方法):
varUnit = varUnit.decode("latin_1")
编辑:如果您只想在您自己的应用程序中显示它,您应该在这里停止并使用Unicode。print varUnit应该给你{}。但传统系统可能无法处理,在这种情况下:
print varUnit
然后,您需要将其简化为可以用纯ASCII表示的字符。最简单的方法是使用unidecode模块(您可以使用pip或easy\u install安装它):
unidecode
上标数字具有兼容性分解,因此可以执行以下操作:
>>> import unicodedata >>> unicodedata.normalize('NFKC', 'm²') 'm2'
首先要知道的是没有一个“扩展ascii”。Ascii的扩展方式有很多种。快速测试表明你想要“拉丁语1”或“cp1252”。因此,首先,将其转换为unicode(一种存储任何字符的方法):
编辑:如果您只想在您自己的应用程序中显示它,您应该在这里停止并使用Unicode。}。但传统系统可能无法处理,在这种情况下:
print varUnit
应该给你{然后,您需要将其简化为可以用纯ASCII表示的字符。最简单的方法是使用
^{pr2}$unidecode
模块(您可以使用pip或easy\u install安装它):上标数字具有兼容性分解,因此可以执行以下操作:
相关问题 更多 >
编程相关推荐