有没有办法在 python 中创建 base13 编号系统?

Is there a way to create base13 numbering system in python?

长话短说,我想制作一个程序来识别一组中的 13 张扑克牌,并报告它们是否是同花顺 "from poker"。我的方法是创建一个 base13 编号系统,然后将输入的卡片转换为等效的十进制值,这样我就可以对它们进行计算以确定它们是否满足标准。

这种操作有没有什么著名的算法或者方法?您认为我的方法合理还是我过于复杂了? (考虑到我无法控制接收卡片数据的格式)

当然,基础很简单

alphabet = "A23456789TJQK"

def convert_to_base_13(x):
    q,r = divmod(x,13)
    if q == 0:
       return alphabet[r]
    return convert_to_base_13(q) + alphabet[r] 

现在您可以将 146 以 13 为基数表示为 "Q4"

虽然我不太确定这对您的纸牌游戏有何帮助