Python 如何映射n个位置后的字母匹配
我想检查是否有人可以生成一个公式,我可以匹配20个位置后的字母顺序,例如,“a”匹配“u”,“b”匹配“v”,而“k”匹配回“e”。这就是简单地移动20个位置 我可以很容易地通过将字母字符串加倍来实现这一点,但它肯定可以在数学上实现。我知道对于a-f,它是n+20,对于“f-z”,它是n-6。只是想知道对于这种情况是否有任何通用公式Python 如何映射n个位置后的字母匹配,python,Python,我想检查是否有人可以生成一个公式,我可以匹配20个位置后的字母顺序,例如,“a”匹配“u”,“b”匹配“v”,而“k”匹配回“e”。这就是简单地移动20个位置 我可以很容易地通过将字母字符串加倍来实现这一点,但它肯定可以在数学上实现。我知道对于a-f,它是n+20,对于“f-z”,它是n-6。只是想知道对于这种情况是否有任何通用公式 干杯这里有一个Python 3选项,使用ord()和chr()将单个字符转换为数字ASCII码: inp=“helloworld” 打印(inp) 偏移量=10 索
干杯这里有一个Python 3选项,使用
ord()
和chr()
将单个字符转换为数字ASCII码:
inp=“helloworld”
打印(inp)
偏移量=10
索引=[ord(x)-ord('a')+列表中x的偏移量(inp)]
输出=''.join([chr(97+(x%26))用于索引中的x])
打印(输出)
这张照片是:
helloworld
rovvygybvn
请注意,
h
变为r
(向前10步),而w
变为g
有“ord”来获取字母的Unicode和ASCII编号。减去“a”的值得到一个从零开始的索引,然后使用加法和模运算。这个方法还提供一个字母索引,因此可以按顺序向后搜索。然而,它需要26人或以上的决定<代码>导入字符串;字母表=string.ascii_小写;字母表索引('a')