用python解答:在一行中输入一个包括大小写字母和数字的字符串,编写将其中的大写字母用该字母后面的第4个字母替换,其他字符原样输出,实现字符串的加密。 输入格式: 明文字符串 输出格式: 密文字符串
时间: 2024-06-12 08:04:31 浏览: 214
python 实现字符串的多种加密、解密
代码如下:
```python
s = input() # 输入字符串
result = '' # 初始化加密后的字符串
for c in s: # 遍历字符串中的每个字符
if c.isupper(): # 如果是大写字母
result += chr((ord(c) - 65 + 4) % 26 + 65) # 将其替换为后面第4个字母
else:
result += c # 其他字符原样输出
print(result) # 输出加密后的字符串
```
解释如下:
1. 首先读入明文字符串,保存在变量`s`中。
2. 初始化加密后的字符串`result`为空字符串。
3. 使用for循环遍历字符串`s`中的每个字符,对于每个字符进行以下操作:
- 如果该字符是大写字母,就将其替换为该字母后面的第4个字母。具体地,先使用`ord()`函数将该字符转换为ASCII码,然后减去65得到与'A'的偏移量,再加上4,最后模上26得到替换后的字符的偏移量,再加上65得到新的字符,最后使用`chr()`函数将其转换为字符。将得到的新字符添加到`result`中。
- 如果该字符不是大写字母,就将其原样添加到`result`中。
4. 循环结束后,输出加密后的字符串`result`。
注意:这个加密算法是一种简单的替换算法,并不安全,容易被破解。实际使用时应该采用更加复杂的加密算法。
阅读全文