python - 整数转二进制

标签 python

我有一个整数,我想将其转换为二进制并将位串存储在从右边开始的一维数组中。例如,如果输入是 6,那么它应该返回一个类似 [1,1,0] 的数组。如何在 python 中实现?

最佳答案

解决方案

可能最简单的方法是不使用 bin()和字符串切片,但使用 .format() 的功能:

'{:b}'.format(some_int)

它的行为方式:

>>> print '{:b}'.format(6)
110
>>> print '{:b}'.format(123)
1111011

如果是bin()你只是得到相同的字符串,但前面有“0b”,所以你必须删除它。

从二进制表示中获取 int 的列表

编辑:好的,所以不要只想要一个字符串,而是一个整数列表。你可以这样做:

your_list = map(int, your_string)

已编辑问题的组合解决方案

所以整个过程是这样的:

your_list = map(int, '{:b}'.format(your_int))

在我看来,比使用 bin() 干净得多。

关于python - 整数转二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13663295/

相关文章:

Python:用于绘制甘特图的模块

javascript - 扩展 Bokeh 以匹配 D3.js

Python打印函数使用mysqlcursor覆盖第一个字符

python - Scrapy 下载错误和 remove_request 错误

解释器环境中的python垃圾收集和_下划线

python - 如何使用Python从Excel文件中读取一列?

python - networkx.Graph() 对象的大小?

python - Werkzeug 不包含 wsgi 模块

python - python 版本 x.y 和 x.y.z 之间有什么区别,例如 2.6 和 2.6.9?

python - 使用 if 语句时使用多个 sys.argv 时索引超出范围