Python 2.7 Python2.7中的数字转换:base6到base10

Python 2.7 Python2.7中的数字转换:base6到base10,python-2.7,bitcoin,base,dice,Python 2.7,Bitcoin,Base,Dice,对此进行了搜索,但未找到有用的帮助。也许我找错了。我想我可以在这里问一下,然后从中了解更多 假设我有99个数字,范围从1到6,由6面骰子掷99次而成。 我想在Python2.7中将它从base6(这已经是base6格式了吗?)转换为base10,我该怎么做?代码应该不晦涩且可读。 如果需要,最好自动将6替换为0。 顺便说一句,这是为了比特币私钥生成。 当它询问“输入骰子卷:”时,正在手动输入骰子卷: 基本上从数字范围1-6->0-5->0-9转换6面骰子 别笑,基本上我现在写的只是: impor

对此进行了搜索,但未找到有用的帮助。也许我找错了。我想我可以在这里问一下,然后从中了解更多

假设我有99个数字,范围从1到6,由6面骰子掷99次而成。 我想在Python2.7中将它从base6(这已经是base6格式了吗?)转换为base10,我该怎么做?代码应该不晦涩且可读。 如果需要,最好自动将6替换为0。 顺便说一句,这是为了比特币私钥生成。 当它询问“输入骰子卷:”时,正在手动输入骰子卷:

基本上从数字范围1-6->0-5->0-9转换6面骰子

别笑,基本上我现在写的只是:

import ...????
dice_input = input("Enter dice rolls: ")
dice_convert_base6_to_base10 = base10.encode(dice_input)...????

不知道是否需要导入或需要导入什么,以及如何处理dice_输入。对你们大多数人来说,我的问题可能听起来有点愚蠢,请不要妄下判断。。非常感谢我能得到的每一个帮助

使用内置的
int
功能

它执行从
字符串
整数
类型的转换。因此,您需要以字符串的形式获取输入

它接受第二个(可选)参数,该参数是您希望假定源来自的基

代码最终会看起来像:

dice_input = raw_input("Enter dice rolls: ")
dice_convert_base6_to_base10 = int(dice_input, 6)
dice_input = raw_input("Enter dice rolls: ").replace('6','0')
dice_convert_base6_to_base10 = int(dice_input, 6)
要将任何
6
转换为
0
,只需使用字符串的
replace
方法即可

然后将代码更改为类似以下内容:

dice_input = raw_input("Enter dice rolls: ")
dice_convert_base6_to_base10 = int(dice_input, 6)
dice_input = raw_input("Enter dice rolls: ").replace('6','0')
dice_convert_base6_to_base10 = int(dice_input, 6)

不确定这是否真的是获得所需密钥生成的方法。。。但是,我不认为我真的摸索过这个用例

第一:谢谢!它基本上与我在这里找到的其他代码相连:如果其他代码完成了,我想首先生成一个随机数,输入它,然后让它处理为比特币私钥。因为我想给脚本第一个随机数,它必须由我自己处理,而不是让它由我的计算机生成。您的方法的结果是:“如果我输入99个数字,AttributeError:'long'对象没有属性'replace'。请尝试您的第二个代码版本。如果我只输入数字123456,它将返回“AttributeError:'int'对象没有属性'replace'我的错误,这就是我在不测试的情况下回答的结果…”。。。请尝试使用
raw_input
内置函数,而不是
input
。顺便说一句,背景信息:这是比特币私钥wiki:这是如何从掷骰子开始获得比特币私钥的分步指南:因此您可以更详细地了解我在这里尝试的操作。给我的脚本一个非数字生成的随机数听起来比依靠我的计算机生成随机数更安全。第一个随机数是最重要的,如果不是真正的随机数,那就不安全。原始输入有效,不会产生错误!顺便说一句,原始输入是我一开始在那里使用的,但出于某种原因将其更改为输入。尝试将其与私钥生成的整个过程联系起来,最终使用WIF私钥和我现在的代码。到目前为止,谢谢你!:)顺便说一句:您的代码行中不缺少这个“base10”进程吗?还是我傻哈哈