2024-09-28 03:15:55 发布
网友
我试图创建一个代码,使00=a01=b,依此类推,例如str2numsp('Ilikepython.')应该返回字符串 “3452110810045241241907141353”。在
import string chars = string.ascii_lowercase + string.ascii_uppercase + " ." encode = {ch:"{:02d}".format(i) for i,ch in enumerate(chars)} def str2numsp(s): return "".join(encode[ch] for ch in s)
它的工作原理是
它们必须从0开始按顺序排列,还是只想使用任何数字?可以使用每个字符的unicode值,如下所示:
0
ord("a") > 97, ord("b) > 98.. etc
然后你可以说
myString = "I like Python"
使用列表理解
哪些输出
[73, 32, 108, 105, 107, 101, 32, 80, 121, 116, 104, 111, 110]
然后将它们连接成字符串
"".join([str(ord(i)) for i in myString])
返回最终输出
'73321081051071013280121116104111110'
如果您希望'a'从零开始,您可以始终从每个ord()中减去97(即“a”),但必须注意特殊字符(空格、标点符号等)。在
'a'
ord()
它的工作原理是
^{pr2}$它们必须从
0
开始按顺序排列,还是只想使用任何数字?可以使用每个字符的unicode值,如下所示:然后你可以说
使用列表理解
^{pr2}$哪些输出
然后将它们连接成字符串
返回最终输出
如果您希望
'a'
从零开始,您可以始终从每个ord()
中减去97(即“a”),但必须注意特殊字符(空格、标点符号等)。在相关问题 更多 >
编程相关推荐