python - 在python中将基数为10的整数列表转换为基数为4的列表

标签 python list

首先,如果标题不正确,我很抱歉。 我正在尝试构建一个程序,将 10 进制整数列表转换为其二进制字符串。例如,我有这个列表

a = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]

我想将它转换为基数 4。也许它应该看起来像这样

b4 = [[00],[01],[02],...[33]]

以下是我到目前为止所写的内容

def base10base4(pix,b):
       pix = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
       for i in range(pix):
              digits = []
              while pix > 0:
                     digits.insert(0, pix % b)
                     pix = pix // b
print(base10base4(pix[i], 4))

当我运行这段代码时,它给我这样的错误

NameError: name 'pix' is not defined

我对 Python 还很陌生。我错过了什么或者我需要更改整个代码吗?我正在使用Python 3.5 谢谢您的帮助

最佳答案

这是一个递归函数,它返回列表中整数的基数 b 表示形式的字符串列表

def convertToBase(num,base):
    q=num/base
    r=num%base
    if (q == 0):
        return str(r)
    else:
        return convertToBase(q,base) + str(r)

pix = [0,3,15,56,12,34] #the list of numbers you want converted to base b
print [convertToBase(x,4) for x in pix]

关于python - 在python中将基数为10的整数列表转换为基数为4的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34784379/

相关文章:

java - java中递归地将字符串追加到字符串列表中

python - 有没有办法使用预定义的陡度将批处理分配到列表的子集?

python正则表达式在<a>元素处拆分字符串并提取链接+文本

python - wxPython:绑定(bind)wx.EVT_CHAR_HOOK禁用TextCtrl退格键

c# - 为什么 List<T>.ForEach 允许修改其列表?

c - FreeBSD 中的 Assertion.h

python - 任何关于 psutil 隐藏导入的 pyinstaller 详细示例?

python - 如何在python中找到拐点?

python - 截断字典列表值

python - 检查字符串的任何字符是否在列表中