如何在 Python 中将浮点数转换为 base36?
How do I convert a float to base36 in Python?
我一直在将 javascript 代码迁移到 python,但我一直在尝试获取 python 版本
Math.random().toString(36)
我不确定如何做到这一点,因为 Math.random()
returns 一个浮点数,在 python 中我无法弄清楚如何将浮点数转换为 base36。据我了解,它只是 int
但 javascript 是怎么做到的?
为了在 python 中获得随机浮点数,我只使用以下内容:
import random
random.uniform(0, 1)
对于编码,我使用了 wiki 示例:
#from wiki
def base36encode(integer: int) -> str:
...
-编辑:
原js代码:
function randomString(length) {
return Array(length + 1).join((Math.random().toString(36) + '00000000000000000').slice(2, 18)).slice(0, length);
}
来自评论。在 JS 中使用 base36 来生成随机的字母数字字符。那是字母表中的 26 + 10 位数字。
在 python 中,您可以生成给定长度的随机字母数字字符串,如下所示:
import random, string
def random_string(length):
return ''.join(random.choice(string.ascii_lowercase + string.digits) for _ in range(length))
我一直在将 javascript 代码迁移到 python,但我一直在尝试获取 python 版本
Math.random().toString(36)
我不确定如何做到这一点,因为 Math.random()
returns 一个浮点数,在 python 中我无法弄清楚如何将浮点数转换为 base36。据我了解,它只是 int
但 javascript 是怎么做到的?
为了在 python 中获得随机浮点数,我只使用以下内容:
import random
random.uniform(0, 1)
对于编码,我使用了 wiki 示例:
#from wiki
def base36encode(integer: int) -> str:
...
-编辑: 原js代码:
function randomString(length) {
return Array(length + 1).join((Math.random().toString(36) + '00000000000000000').slice(2, 18)).slice(0, length);
}
来自评论。在 JS 中使用 base36 来生成随机的字母数字字符。那是字母表中的 26 + 10 位数字。
在 python 中,您可以生成给定长度的随机字母数字字符串,如下所示:
import random, string
def random_string(length):
return ''.join(random.choice(string.ascii_lowercase + string.digits) for _ in range(length))