首页 > 编程语言 > 详细

python栈实现十进制到任意进制的转换

时间:2019-11-06 09:59:22      阅读:228      评论:0      收藏:0      [点我收藏+]
定义一个Python栈:stack.py

class Stack:
    def __init__(self):
        self.items = []

    def is_Empty(self):
        return self.items == []

    def push(self, item):
        self.items.append(item)

    def pop(self):
        return self.items.pop()

    def peek(self):
        return self.items[len(items)-1]

    def size(self):
        return len(self.items)

进制转换:

from stack import Stack

def divideBy2(decNumber, base):
    remstack = Stack()
    digits = "0123456789ABCDEF"

    while decNumber > 0:
        rem = decNumber % base
        remstack.push(rem)
        decNumber //= base
    binString = ""
    while not remstack.is_Empty():
        binString = binString + digits[remstack.pop()]
    return binString
print(divideBy2(15,16))

python栈实现十进制到任意进制的转换

原文:https://blog.51cto.com/13560219/2447882

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!