Skip to main content
 首页 » 编程设计

python之自然二进制代码之查找前 n 个数字

2025年05月04日12lautakyan007

输出/查找自然二进制码的前n个数:

import math   
def binary_print(n): 
    m = int(math.ceil(math.log(n, 2))) 
    for i in range(n): 
        b = str(bin(i)[2:]) 
        print((m - len(b)) * '0' + b) 

我的问题是:

您知道在 Python 中执行此操作的任何其他方法吗?也许更快?还是更短(更少的代码)?

请您参考如下方法:

这个更短,不确定是否更快:

def binary_print(n): 
    print '\n'.join('{:0{}b}'.format(x, (n-1).bit_length()) for x in range(n)) 

示例用法:

>>> binary_print(6) 
000 
001 
010 
011 
100 
101