gpt4 book ai didi

python - python十六进制数字格式中的数字分组

转载 作者:行者123 更新时间:2023-12-02 00:18:59 24 4
gpt4 key购买 nike

假设我在 python 中打印了一堆十六进制数字,例如用于调试目的的地址,我希望能够直观地比较它们。一个很大的帮助是将数字分组,类似于我们使用千位分隔符表示十进制数的方式。

这也是为什么当您对一些数字进行 hexdump 时,数字按 4 分组,而不是深不可测的十六进制字符串的原因。

不可读:47167689711616
勉强可读:2ae61563e000
半读:47,167,689,711,616
最易读:2ae6,1563,e000

如果分组是按 2、3 或 4 位数字,我真的不在乎分隔符是什么。但是,分组选项似乎不起作用:

>>> '{:x}'.format(47167689711616)
'2ae61563e000'
>>> '{:,x}'.format(47167689711616)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: Cannot specify ',' with 'x'.

我正在使用的机器(我不是管理员)只有 python 3.4

最佳答案

新的分组选项“_”已introduced in python 3.6 :

The '_' option signals the use of an underscore for a thousands separator for floating point presentation types and for integer presentation type 'd'. For integer presentation types 'b', 'o', 'x', and 'X', underscores will be inserted every 4 digits. For other presentation types, specifying this option is an error.

Changed in version 3.6: Added the '_' option (see also PEP 515 -- Underscores in Numeric Literals).

例子:

>>> '{:_x}'.format(47167689711616)
'2ae6_1563_e000'

当然这对最新的机器有帮助,但对 python 3.4 没有帮助。

关于python - python十六进制数字格式中的数字分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56132859/

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