更强更方便的进制转换工具

最近,我仿照https://blog.csdn.net/Eyizoha/article/details/94897931?locationNum=9&fps=1上的2-36进制转换的代码做出了一个更强的2-62进制转换工具,不仅可以进行普通的进制转换,还可以直接进行不同进制计算,代码如下(Python3):

from decimal import *
getcontext().prec = 1000
def trans(num):	# 输入数字换为字母或输入字母转换为数字
    if type(num) == int:
        if num < 10:
            return str(num)
        elif num < 36:
            return chr(ord('a') + num - 10)
        else:
            return chr(ord('A') + num - 36)
    else:
        if num.isdigit():
            return int(num)
        elif num.islower():
            return ord(num) - ord('a') + 10
        elif num.isupper():
            return ord(num) - ord('A') + 36

def check(num, base, target): # 待转换数字,当前进制,目标进制
    if type(base) is not int or base < 2 or base > 62 or type(target) is not int or target < 2 or target > 62:
        print('非法进制数!')
        return False
    if type(num) is int or type(num) is Decimal:
        num = str(num)
    
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值