要使用Python将文本文件加密后输出,可以使用密码学中的一些算法来对文件进行加密。下面是一个使用AES算法将文本文件加密的示例:
```python
from Crypto.Cipher import AES
def encrypt_file(input_file, output_file, key):
# 使用AES算法创建加密对象
cipher = AES.new(key, AES.MODE_ECB)
chunk_size = 16 * 1024 # 每次读取16KB
with open(input_file, 'rb') as file_in:
with open(output_file, 'wb') as file_out:
while True:
chunk = file_in.read(chunk_size)
if len(chunk) == 0:
break
# 加密数据
encrypted_chunk = cipher.encrypt(chunk)
file_out.write(encrypted_chunk)
# 设置输入文件、输出文件和密钥
input_file = 'input.txt'
output_file = 'encrypted_output.txt'
key = b'Sixteen byte key'
# 调用加密函数
encrypt_file(input_file, output_file, key)
```
在上面的代码中,我们使用了`Crypto`库中的`AES`模块来实现AES加密。首先,我们创建了一个加密对象`cipher`,使用给定的密钥和加密模式(这里使用了ECB模式)。然后,我们按指定的块大小(这里是16KB)读取输入文件,并将每个块加密后写入输出文件。
请注意,这只是一个简单的示例,实际使用中还需要考虑更多因素,如文件较大时的分块加密、密钥的安全性等。