Get size in Bytes needed for an integer in Python(获取Python中整数所需的字节大小)
本文介绍了获取Python中整数所需的字节大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何找出某个整数占用的存储字节数?
How can I find out the number of Bytes a certain integer number takes up to store?
例如对于
- 十六进制
x00-xff(或十进制0-255= 二进制0000 0000-1111 1111) 我希望得到 1(字节), - 十六进制
x100-xffff(或十进制256-65535= 二进制0000 00010000 0000-1111 1111 1111 1111) 会给我 2(字节)
- hexadecimal
x00-xff(or decimal0-255= binary0000 0000-1111 1111) I'm looking to get 1 (Byte), - hexadecimal
x100-xffff(or decimal256-65535= binary0000 0001 0000 0000-1111 1111 1111 1111) would give me 2 (Bytes)
等等.
输入十六进制或十进制格式的任何线索?
Any clue for hexadecimal or decimal format as the input?
推荐答案
你可以使用简单的数学:
You can use simple math:
>>> from math import log
>>> def bytes_needed(n):
... if n == 0:
... return 1
... return int(log(n, 256)) + 1
...
>>> bytes_needed(0x01)
1
>>> bytes_needed(0x100)
2
>>> bytes_needed(0x10000)
3
这篇关于获取Python中整数所需的字节大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:获取Python中整数所需的字节大小
基础教程推荐
猜你喜欢
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
