3.python请编写一个加密程序。实现输入一行字符串,将其每个字母加密后 输出。提示:凯撒密码。
时间: 2023-05-11 11:03:10 浏览: 128
以下是 Python 代码实现凯撒密码加密:
```python
def caesar_cipher(text, shift):
result = ""
for i in range(len(text)):
char = text[i]
if char.isupper():
result += chr((ord(char) + shift - 65) % 26 + 65)
elif char.islower():
result += chr((ord(char) + shift - 97) % 26 + 97)
else:
result += char
return result
text = input("请输入要加密的字符串:")
shift = int(input("请输入加密偏移量:"))
print("加密后的字符串为:", caesar_cipher(text, shift))
```
输入要加密的字符串和加密偏移量后,程序会输出加密后的字符串。
例如,输入字符串 "hello world" 和偏移量 3,程序会输出加密后的字符串 "khoor zruog"。
注意:凯撒密码是一种简单的加密方式,容易被破解,不适合用于真正的加密场景。
相关问题
编写一个程序实现凯撒加密:输入一个字符串,对字符串中的字母和数字进行加密(规定加密偏移量为3,即后移三位),并输出加密后的字符串。 格式 输入 一行字符串 输出 加密后的字符串 样例 输入 Open Box PassWord:2021 输出 Rshq Era SdvvZrug:5354
以下是实现凯撒加密的 Python 代码:
```python
def caesar_cipher(text):
result = ""
for char in text:
if char.isalpha():
if char.isupper():
result += chr((ord(char) + 3 - 65) % 26 + 65)
else:
result += chr((ord(char) + 3 - 97) % 26 + 97)
elif char.isdigit():
result += str((int(char) + 3) % 10)
else:
result += char
return result
text = input()
print(caesar_cipher(text))
```
输入 Open Box PassWord:2021,输出 Rshq Era SdvvZrug:5354。
请注意,这个程序只是一个简单的示例,实际上凯撒加密并不安全,容易被破解。如果需要更高级的加密算法,请使用专业的加密库。
用python:编写函数,实现凯撒加密算法,从键盘输入字符串(明文)和秘钥k,输出加密后的字符串,其中k为每个英文字母在字母表中后面的第k个字母,字母表首尾循环相接。
可以使用以下代码实现凯撒加密算法:
```python
def caesar_cipher(text, key):
"""实现凯撒加密算法"""
encrypted_text = ""
for char in text:
if char.isalpha():
# 将字母转换为ASCII码并进行加密操作
encrypted_char = chr((ord(char) - 65 + key) % 26 + 65)
else:
encrypted_char = char
encrypted_text += encrypted_char
return encrypted_text
```
其中,`text`为输入的明文字符串,`key`为秘钥,表示每个英文字母在字母表中后面的第k个字母。该函数首先遍历输入的明文字符串中的每个字符,如果是字母则进行加密操作,否则直接添加到加密后的字符串中。加密操作分为以下几步:
1. 将字母转换为ASCII码,减去65后得到该字母在字母表中的位置;
2. 加上秘钥k;
3. 对26取模,得到加密后字母在字母表中的位置;
4. 再加上65,将加密后字母的ASCII码转换为字母。
最后返回加密后的字符串。
阅读全文