class Stack: def __init__(self): self.items=[] def isEmpty(self): return self.items==[] def push(self,item): #添加元素進站 self.items.append(item) def peek(self): #打印棧頂元素 return self.items[len(self.items)-1] def pop(self): #從棧頂取出元素 return self.items.pop() def size(self): #返回棧中元素的個數 return len(self.items) #使用Python自帶庫 def divideByBase(decNumber,base): #進制轉換,base表明進制 remstack=Stack() digits="0123456789ABCDEF" #十六進制數 while decNumber>0: rem=decNumber%base #取餘 remstack.push(rem) decNumber=decNumber//base #作除法取商,再次取餘 binString="" while not remstack.isEmpty(): binString=binString+digits[remstack.pop()] return binString print(divideByBase(1783,16))