编写一个文本加密程序,将英文文本文件in.txt加密成out.txt,加密方法是A->Z,B->Y,…Z->A,a->z,b->y,…z->a,其他字符不加密。
时间: 2024-02-03 07:13:45 浏览: 25
以下是Python 3的实现代码:
```python
# 打开输入文件和输出文件
with open("in.txt", "r") as f_in, open("out.txt", "w") as f_out:
# 读入输入文件的内容
text = f_in.read()
# 定义加密映射表
mapping = str.maketrans(
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
"ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba"
)
# 加密文本并写入输出文件
encrypted_text = text.translate(mapping)
f_out.write(encrypted_text)
```
首先,我们使用Python的`with`语句打开输入文件和输出文件,这样就可以在代码块结束时自动关闭文件。然后,我们使用`read()`方法读入输入文件的内容,并定义一个映射表`mapping`,用于将每个字符映射成加密后的字符。`str.maketrans()`方法可以根据两个字符串生成一个映射表。最后,我们使用`translate()`方法将文本中的每个字符根据映射表进行加密,并将加密后的文本写入输出文件中。
相关问题
编写一个文本加密程序,将英文文本文件in.txt加密成out.txt, 加密方法是A->Z,B -> Y,…,a -> z,b -> y,⋯z->a,其他字符不加密
可以使用 Python 编写一个文本加密程序,代码如下:
```python
# 打开输入文件和输出文件
with open("in.txt", "r") as fin, open("out.txt", "w") as fout:
# 逐行读取输入文件
for line in fin:
# 对每个字符进行加密
encrypted_line = ""
for c in line:
if c.isalpha():
if c.isupper():
encrypted_line += chr(ord('Z') - ord(c) + ord('A'))
else:
encrypted_line += chr(ord('z') - ord(c) + ord('a'))
else:
encrypted_line += c
# 写入输出文件
fout.write(encrypted_line)
```
这个程序会将输入文件 `in.txt` 中的英文文本加密成输出文件 `out.txt`,加密方法是 A->Z, B->Y, ..., a->z, b->y, ..., z->a,其他字符不加密。可以根据实际需要修改输入文件和输出文件的文件名。
用python编写一个文本加密程序,将英文文本文件in.txt加密成out.txt,加密方法是A->Z,B->Y,…Z->A,a->z,b->y,…z->a,其他字符不加密。
下面是一个简单的Python程序,可以将英文文本文件in.txt加密成out.txt,加密方法是A->Z,B->Y,…Z->A,a->z,b->y,…z->a,其他字符不加密。代码如下:
```python
# 打开输入文件
with open('in.txt', 'r') as fin:
# 读取文件内容
text = fin.read()
# 定义加密映射表
mapping = str.maketrans(
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
'ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba')
# 加密文本
encrypted_text = text.translate(mapping)
# 打开输出文件
with open('out.txt', 'w') as fout:
# 写入加密后的文本
fout.write(encrypted_text)
```
该程序首先打开输入文件in.txt,读取文件内容到变量text中。然后定义一个加密映射表mapping,使用Python内置函数str.maketrans来生成映射表,将A->Z,B->Y,…Z->A,a->z,b->y,…z->a。接着使用Python内置函数str.translate函数,将文本text加密成encrypted_text。最后打开输出文件out.txt,将加密后的文本写入文件中。