Python十进制到二进制数组

2024-10-01 09:29:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题与这个stackoverflow帖子有关:enter link description here,其中inspector4dget提供了代码

def decToBin(n):
    if n==0: return ''
    else:
        return decToBin(n/2) + str(n%2)

Alex Martelli观察到的递归是不必要的,因为可以使用明显的bin(x)[2:]。如果用户需要二进制表示为字符串,这是可以的。但是,我需要二进制表示为list或numpy ndarray。如我所见,我的选择是a)改编此代码或b)类似于string.split(','.join(bin(10)[2:]),',')。我知道字符串操作往往很昂贵,但递归也很昂贵。在

考虑到我需要将一个整数转换成类似数组的位,哪个选项(a或b)可能更有效?有没有其他更简单更好的方法呢?在


Tags: 字符串代码returnifbinheredef二进制