gmpy2 mpz 类型在不同的基地
gmpy2 mpz type in a different base
我正在尝试使用 MPZ 更改数字的基数,但是当我尝试 mpz(16[, base=16])
时,我遇到了无效语法错误。
如果我使用 mpz(0x16)
,它 returns 是一个以 10 为基数的数字 (22
)。是否可以将 MPZ 类型存储在不同的基中?
mpz
类型总是在内部将值存储为二进制。可选的 base
关键字用于字符串转换。一些例子:
>>> mpz("10", base=16)
mpz(16)
>>> mpz("10", base=32)
mpz(32)
要将 mpz
转换为任意基数的字符串,请使用 digits()
方法。
>>> mpz("10", base=32).digits(16)
'20'
>>> mpz("10", base=32).digits(32)
'10'
>>> mpz("10", base=32).digits(2)
'100000'
关于语法错误,帮助文本中的方括号[, base=0]
表示关键字base
是可选的,默认值为0
。不应输入方括号。
我正在尝试使用 MPZ 更改数字的基数,但是当我尝试 mpz(16[, base=16])
时,我遇到了无效语法错误。
如果我使用 mpz(0x16)
,它 returns 是一个以 10 为基数的数字 (22
)。是否可以将 MPZ 类型存储在不同的基中?
mpz
类型总是在内部将值存储为二进制。可选的 base
关键字用于字符串转换。一些例子:
>>> mpz("10", base=16)
mpz(16)
>>> mpz("10", base=32)
mpz(32)
要将 mpz
转换为任意基数的字符串,请使用 digits()
方法。
>>> mpz("10", base=32).digits(16)
'20'
>>> mpz("10", base=32).digits(32)
'10'
>>> mpz("10", base=32).digits(2)
'100000'
关于语法错误,帮助文本中的方括号[, base=0]
表示关键字base
是可选的,默认值为0
。不应输入方括号。