将数字从基数10转换为基数4

时间:2016-01-14 17:54:36

标签: python base

我已经问过类似的问题,但这只是从0到15的数字列表。我想到尝试将数字从0转换为15以上。这是我到目前为止所写的内容

def base_convert(i, b):
   result = []
   for i in range(20):
          while i > 0:
                 result.insert(0, i % b)
                 i = i // b
          return result

print(base_convert(i,4))

但是我收到错误,说'i'这个名字没有定义。我错过了什么吗?或许我写错了代码。谢谢你的回答。

1 个答案:

答案 0 :(得分:1)

三个问题:

  1. 当您调用Morgan提及的功能时,您尚未定义i
  2. i是输入参数,因此在使用之前不应该在函数中覆盖它。
  3. 您不需要for循环。
  4. 对于9

    的测试,它应该如下所示
    def base_convert(i, b):
        result = []
        while i > 0:
                result.insert(0, i % b)
                i = i // b
        return result
    
    print(base_convert(9,4)