Python-Base 10到Base X的转换

2024-05-15 06:20:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我想写一个程序,要求用户输入一个基数为10的数字,并输入他们想转换成的基数。什么是最高的基础,我可以转换成没有我的程序变得难以置信的复杂?我在想基数9,因为10之后(已经给出),基数开始使用字母。我说的对吗?

注意:对于Python初学者来说,我的意思是复杂。我对这个程序还远远不够熟练。

注2:我试图在没有模块的情况下完成这项工作。


Tags: 模块用户程序字母情况数字基础基数
3条回答

如果你把数字值放在一个字符串中,那么你可以使用的基数就很容易变得很高。

radixdigits = '0123456789ABCDEFGHI...'

然后,您可以使用字符串的长度进行^{}操作,以获取当前数字,并使用该数字对字符串进行索引。

What is the highest base that I can convert to without having my program become incredibly complicated?

在ASCII中,以127为基数。但是,由于大写/小写看起来很相似,而且不可打印的ASCII字符需要很多复杂的转义,因此很难读取。

你最好把数字和字母限制在以36为基数的范围内,因为你可以使用数字和字母而不会产生任何混淆的歧义。

在Unicde中,根据要处理的Unicode字符数,以65536为基数或类似的基数。

I'm thinking Base 9, because after 10 (which is already given), the bases start to use letters. Am I correct?

你说得对。

标准ASCII有9位数字符号。你不是被迫使用字母,但使用字母是很常见的。

您可以使用许多既不是字母也不是数字的Unicode符号。

I'm attempting to do this without modules.

这没什么关系。

现在阅读其他关于基转换的Stackoverflow问题。

这是一个开头:Base 62 conversion

这是搜索:https://stackoverflow.com/search?q=%5Bpython%5D+base+conversion

这是Google Code Jam上的特色。几年前。您正在查找名为Alien Numbers的问题

我鼓励你先看一下这个(以及上传的解决方案代码),如果这对你不起作用,让我知道,我可以向你展示我的解决方案,我可以更清楚地解释

希望这有帮助

相关问题 更多 >

    热门问题