十六进制转换函数为Python< 2.7兼容

时间:2014-09-22 22:39:54

标签: python hex

我有这个函数来转换HEX字符串并删除0x部分:

self.foo = '{:04X}'.format()

这适用于Python> = 2.7但如果我使用python 2.6给我这个错误: ValueError:格式为

的零长度字段名称

我如何修复它以便在2.6 python中使用?

感谢您的帮助

2 个答案:

答案 0 :(得分:0)

为什么不只是老式的%

"%04x" % 42

答案 1 :(得分:0)

Python2.6要求您指定"名称"对于该字段(解释ValueError的消息)。如果您使用位置参数.format,那么"名称"是例如0它看起来像这样:

self.foo = '{0:04X}'.format(something)

Python2.7引入了一个快捷方式,如果没有指定名称,则假定它是下一个位置参数。