Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python의 Atbash 암호

<시간/>

text라는 소문자 알파벳 문자열이 있다고 가정합니다. 텍스트의 모든 문자가 알파벳의 역순으로 매핑되는 새 문자열을 찾아야 합니다. 예를 들어 a는 z가 되고 b는 y가 되는 식입니다.

따라서 입력이 "abcdefg"와 같으면 출력은 "zyxwvut"가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • N :=('z')의 ASCII + ('a')의 ASCII

  • 텍스트의 각 문자 s에 대해 ASCII 값(N - ASCII of s)의 각 문자를 결합하여 ans를 반환합니다.

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

class Solution:
   def solve(self, text):
      N = ord('z') + ord('a')
      ans=''
      return ans.join([chr(N - ord(s)) for s in text])
ob = Solution()
print(ob.solve("abcdefg"))
print(ob.solve("hello"))

입력

"abcdefg"
"hello"

출력

zyxwvut
svool