1 from pythonds import Stack 2 def devideBybase(decnumber,base): #base==x 3 remstack = Stack() #空栈用来存储余数。 4 while decnumber>0: #eg. 2进制是一直除以2,直到商为0,将余数逆向排列,最后得到的是转换后的顶(最左边) 5 rem = decnumber% base 6 remstack.push(rem) # init 7 decnumber=decnumber// base 8 #以上得到一个逆序的栈 9 10 binString="" 11 while not remstack.isEmpty(): 12 binString= binString+str(remstack.pop()) #利用栈性质得到新的栈字符串 13 return binString 14