基数乘数

Base multiplier

您好,我的代码在将一个数乘以 2 到 9 的任何基数时遇到了一些问题。我在网上看过,但没有找到我正在寻找的答案。我现在的代码是:

def conver(n,b):
for i in range (b):
    x = b**i 

我想知道如何让 b 乘以 i 的所有值,而且我知道我也应该合并这些代码片段,但我不确定如何:

n//b + n%b

这是一个适用于 36 进制的版本:

def conver(n,b):
  assert 1 < b <= 36,'Invalid base. Must be between 2 and 36'
  if n == 0: return '0'
  ans = ''
  while n > 0:
    ans = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'[n%b] + ans
    n //= b
  return ans

NUMBER = 65535
for b in range(2,37):
  print(NUMBER,'in base',b,'is',conver(NUMBER,b))