如何将一个大字符串编码成4个字母的字符串?

2024-09-28 23:20:06 发布

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

我想根据多个列中的条目为datatable的每一行构建一个ID。在

如何继续将一个长字符串,比如hello2017good转换成一个3个或4个字母的字符串,这个字符串只能包含字母,但允许同时使用大写/小写字母?在


Tags: 字符串id字母条目大写datatable小写字母hello2017good
1条回答
网友
1楼 · 发布于 2024-09-28 23:20:06

采用一个标准的散列算法,比如sha1,并使用返回到a到z(和a-z)的表中索引的字节的随机数组。在

import hashlib
h = hashlib.sha1(b"hello2017good")
d = h.digest()
s = ""
for i in range(0,4):
    x = d[i] % 52
    if x >= 26:
        s += chr(ord('A') + x - 26)
    else:
        s += chr(ord('a') + x)
print(s)

相关问题 更多 >