📜  Python字典在字符串中查找镜像字符

📅  最后修改于: 2022-05-13 01:55:10.666000             🧑  作者: Mango

Python字典在字符串中查找镜像字符

给定一个字符串和一个数字 N,我们需要按照字母顺序从第 N 个位置到字符串的长度镜像字符。在镜像操作中,我们将“a”更改为“z”,将“b”更改为“y”,依此类推。
例子:

Input : N = 3
        paradox
Output : paizwlc
We mirror characters from position 3 to end.

Input : N = 6
        pneumonia
Output : pneumlmrz

对于这个问题,我们有一个现有的解决方案,请参阅字符串链接的镜像字符。我们可以使用字典数据结构在Python中解决这个问题。 'a' 的镜像值是 'z','b' 是 'y' 等等,所以我们创建了一个字典数据结构,并将字母逆序一对一映射到原始字母序列上。现在遍历给定字符中长度为 k 的字符串,并使用字典将字符更改为它们的镜像值。

Python3
# function to mirror characters of a string
 
def mirrorChars(input,k):
 
    # create dictionary
    original = 'abcdefghijklmnopqrstuvwxyz'
    reverse = 'zyxwvutsrqponmlkjihgfedcba'
    dictChars = dict(zip(original,reverse))
 
    # separate out string after length k to change
    # characters in mirror
    prefix = input[0:k-1]
    suffix = input[k-1:]
    mirror = ''
 
    # change into mirror
    for i in range(0,len(suffix)):
         mirror = mirror + dictChars[suffix[i]]
 
    # concat prefix and mirrored part
    print (prefix+mirror)
          
# Driver program
if __name__ == "__main__":
    input = 'paradox'
    k = 3
    mirrorChars(input,k)


输出:

paizwlc