首页 > 解决方案 > 在python中动态创建变量

问题描述

我有一个图像列表,我反复调用相同的函数:

first_image = load_image("test1.jpg")
first_image_encoding = pic_encoding(first_image)[0]

second_image = load_image("test2.jpg")
second_image_encoding = pic_encoding(second_image)[0]

之后我需要将它们填充到这样的数组中:

encoding_arr = [
    first_image_encoding, 
    second_image_encoding
]

我正在尝试动态地完成所有这些工作,但需要帮助第一部分将唯一变量名称分配给分配的值。

这是我到目前为止所拥有的:

for root, dirs, files in os.walk(img_dir):
    for f in files:
        first_image = load_image(f)
        first_image_encoding = pic_encoding(first_image)[0]

我不确定如何在此处获取唯一变量列表,而不是手动对其进行硬编码

标签: pythonarrayspython-3.xnumpy

解决方案


动态创建变量会增加处理它们的额外开销,相反,您可以直接附加到列表,如下所示:

encoding_arr = []
for root, dirs, files in os.walk(img_dir):
    for f in files:
        encoding_arr.append(pic_encoding(load_image(f))[0])

推荐阅读