首页 > 解决方案 > 如何使用python在for循环中加密图像

问题描述

我在让我的 for 循环加密文件夹中的所有图像时遇到问题。似乎该'x'变量引起了问题并且不会'bytearray'。glob 旨在循环遍历我文件夹中的所有 png 文件。

import glob
import os

for file in glob.glob("*.png"):
    x = bytearray(file)
    key = 100

    for index, value in enumerate(x):
        x[index] = value ^ key

    g = open("enc.png", "wb")
    g.write(x)
    g.close

标签: pythonencryption

解决方案


glob.glob("*.png") 列出了所有存在的 .png 文件的路径,因此您现在正在做的是获取 x 中 .png 文件路径的字节数组。你应该使用

f = open(file, "rb").read()
x = bytearray(f)

获取文件的字节数组,然后做你的事情。


推荐阅读