从键盘输入待加密字串,及k值 大写字母、小写字母、数字均进行映射转换: 小写字母与逆序大写字母互换进行映射,如a--Z,b--Y,c--X ... ... , z--A 数字与其后面的第k位进行映射,如当k=2时,映射对应关系为0123456789--2345678901
时间: 2024-03-10 12:45:06 浏览: 147
以下是一个可以实现输入待加密字符串和k值,然后对字符串进行加密的Python代码:
```python
s = input("请输入待加密字符串: ")
k = int(input("请输入k值: "))
encrypted_s = ""
for ch in s:
if ch.islower():
encrypted_s += chr(ord('z') - (ord(ch) - ord('a')))
elif ch.isupper():
encrypted_s += chr(ord('Z') - (ord(ch) - ord('A')))
elif ch.isdigit():
encrypted_s += chr((ord(ch) - ord('0') + k) % 10 + ord('0'))
else:
encrypted_s += ch
print("加密后的字符串为:", encrypted_s)
```
在代码中,我们首先使用input()函数获取待加密字符串和k值。然后,我们定义一个新的字符串`encrypted_s`,用于存储加密后的字符串。
接下来,我们使用for循环遍历待加密字符串中的每个字符。对于小写字母和大写字母,我们可以使用ord()函数将其转换为ASCII码值,然后通过计算得到其映射后的对应字符的ASCII码值,再使用chr()函数将其转换为字符。对于数字,我们先使用ord()函数将其转换为整数,然后加上k,再使用模运算得到映射后的对应数字,最后将其转换为字符。
最后,我们将加密后的字符添加到新字符串`encrypted_s`中,并使用print()函数输出加密后的字符串。
阅读全文