繁体   English   中英

如何获得循环遍历列表的方式?

[英]How can I get my loop to iterate through my list?

我是编程和python的新手。 我建立了一个循环,使用一个图像创建平铺图像,效果很好。

for left in range(0,iWidth,(logoWidth + xOffset)):
    for top in range (0,iHeight,(logoHeight + yOffset)):
        icopyIm2.paste(logo,(left,top))

icopyIm2.save("tiled_image.png")

但是,我希望它使用一系列图像,以便每个图块都不同。 在“粘贴”的参数中,“徽标”变量仅是一张图像。 我希望循环遍历列表,例如:

imageList = [pic1.png,pic2.png,pic3.png,pic4.png]

我不确定如何实现这一目标。

如评论中所述,您需要弄清楚平铺不同图像时的处理方式。 如果您的帧是3x3并且有5张图像,您希望它看起来像什么?

我认为您的问题的核心是设置带有参数的函数。 以下示例制作了一个由3个字母组成的单词的平铺图像,我认为这与您的问题一致。 我选择只是反复遍历输入列表-无模式。

def make_box(width, height, hits):
    hit_limit = len(hits)
    count = 0
    for i in range(height):
        for j in range(width):
            print(hits[count % hit_limit], end=' ')
            count += 1
        print()

hit_list = ['bop', 'pow', 'zap', 'bam', 'oof']
box_h = 3
box_w = 4

make_box(box_w, box_h, hit_list)

输出:

bop pow zap bam 
oof bop pow zap 
bam oof bop pow 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM