首页 > 解决方案 > 未绑定本地错误

问题描述

我对 python 比较陌生,我不明白为什么这会引发错误。

ar=''
def decToBin(no):
    while(no>0):
        ar=ar+str(no%2)
        no=no//2
    print(ar[::-1])
decToBin(4)

有效的代码

def decToBin(no):
    ar=''
    while(no>0):
        ar=ar+str(no%2)
        no=no//2
    print(ar[::-1])
decToBin(4)

“ar”变量的范围应该是全局的,并且应该可以在函数内部访问。谁能解释为什么前者不起作用?

标签: python-3.x

解决方案


使用 numpy 将十进制更改为二进制很容易:

import numpy as np
np.binary_repr(4, width=None)

推荐阅读