如何在Django中使用十六进制数
我是Django(和python)的新手,我正在尝试使用十六进制数。我有一个模型,其中我使用了一个正整数域。但我想在表单中输入0x0000之类的数字,并在列出表格时显示为十六进制。我应该在哪里看到这种行为?一个自定义小部件,一个管理器,一个元子类?我有很多东西要学(哦,是的,宝贝!),但时间太少了。如果您能提供一点帮助,以了解在哪里可以找到,我们将不胜感激:)如何在Django中使用十六进制数,django,python-3.5,Django,Python 3.5,我是Django(和python)的新手,我正在尝试使用十六进制数。我有一个模型,其中我使用了一个正整数域。但我想在表单中输入0x0000之类的数字,并在列出表格时显示为十六进制。我应该在哪里看到这种行为?一个自定义小部件,一个管理器,一个元子类?我有很多东西要学(哦,是的,宝贝!),但时间太少了。如果您能提供一点帮助,以了解在哪里可以找到,我们将不胜感激:) 谢谢因此,如果您希望用户提交一个类似于0x04的数字,则需要将其作为字符串发送。在后端,将它们解析为base-16整数: # input
谢谢因此,如果您希望用户提交一个类似于
0x04
的数字,则需要将其作为字符串发送。在后端,将它们解析为base-16整数:
# input_string = "0x04"
n = int(input_string, 16)
=> n = 4
将它们存储在模型上,在此处,基础并不重要:
your_model.number = n
显示时,只需使用hex()
:
或者最好使用“%x”格式设置程序:
>>> print "%x" % 100
64
>>> print "0x%x" % 100
64
这将允许您用零填充数字
>>> print "%06x" % 100
000064
使用Django CharField存储十六进制值。
>>> print "%06x" % 100
000064