用Python ,输入一串英文,转换为2进制,转换为16进制,然后用凯撒密码平移n位(n要输入),然后输出
时间: 2024-10-28 22:10:12 浏览: 9
在Python中,你可以使用内置的函数和字符串操作来完成这个任务。首先,我们将把英文字符串转换为二进制和十六进制,然后使用凯撒密码进行平移。这里是一个示例代码:
```python
def convert_and_encrypt(text, shift):
# 转换为二进制
binary = ''.join(format(ord(char), '08b') for char in text)
# 转换为十六进制
hexadecimal = ''.join(hex(ord(char))[2:] for char in text) # [2:]去除 '0x'
# 凯撒密码平移
encrypted_text = ''
for char in text:
new_char = chr((ord(char) - ord('a') + shift) % 26 + ord('a'))
encrypted_text += new_char
return binary, hexadecimal, encrypted_text
# 输入英文字串和偏移量
input_text = input("请输入英文字符串: ")
shift_value = int(input("请输入凯撒密码的平移位数: "))
# 进行转换和加密
binary, hexadecimal, encrypted_text = convert_and_encrypt(input_text, shift_value)
print(f"原始二进制: {binary}")
print(f"原始十六进制: {hexadecimal}")
print(f"加密后的文本: {encrypted_text}")
阅读全文