import math
def baseencode(number, base):
##Converting a number of any base to base10
if number == 0:
return '0'
for i in range(0,len(number)):
if number[i]!= [A-Z]:
num = num + number[i]*pow(i,base)
else :
num = num + (9 + ord(number[i])) *pow(i,base)
return num
a = baseencode('20',5)
print a
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
Traceback (most recent call last):
File "doubtrob.py", line 19, in <module>
a = baseencode('20',5)
File "doubtrob.py", line 13, in baseencode
if number[i]!= [A-Z]:
NameError: global name 'A' is not defined
Run Code Online (Sandbox Code Playgroud)
eum*_*iro 11
不是int(x, base)你需要的吗?
int('20',5) # returns the integer 10
Run Code Online (Sandbox Code Playgroud)
你在混淆Python ...... Perl或者其他什么......
if not ('A' <= number[i] <= 'Z'):
Run Code Online (Sandbox Code Playgroud)