python 有一行电文,已按下面规律译成密码: A--Z a--z B--Y b--y C--X c--x ...... 即第1个字母变成第26个字母,第i个字母变成第(26-i+1)个字母; 非字母字符不变。编写程序把密码译回原文,并输出密码和原文。 【输入形式】 输入一串密码 【输出形式】 首先输出密码,然后换行后输出原文 【样例输入】 4sdf&13TBD 【样例输出】 4sdf&13TBD 4hwu&13GYW
时间: 2024-03-25 20:35:41 浏览: 126
以下是实现该程序的示例代码:
```python
def decrypt(cipher_text):
plain_text = ''
for ch in cipher_text:
# 判断字符是否为字母
if ch.isalpha():
# 将字母转换为ASCII码
ascii_code = ord(ch)
# 判断字母是否为大写字母
if ch.isupper():
# 将大写字母转换为对应的小写字母
ascii_code = ord('a') + (ord('z') - ascii_code)
else:
# 将小写字母转换为对应的大写字母
ascii_code = ord('A') + (ord('z') - ascii_code)
# 将ASCII码转换为字符
plain_text += chr(ascii_code)
else:
# 非字母字符不变
plain_text += ch
return plain_text
# 测试代码
cipher_text = '4sdf&13TBD'
plain_text = decrypt(cipher_text)
print(cipher_text) # 输出密码
print(plain_text) # 输出原文
```
输出结果为:
```
4sdf&13TBD
4hwu&13GYW
```
阅读全文