Python中的无序图像

2024-09-27 22:34:14 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,Stackoverflow社区,我在使用shuffle函数时遇到一些代码问题:

red_image =  'DDtest/210red.png'
green_image = 'DDtest/183green.png'
b = [red_image, green_image]
c = shuffle(b)
win = visual.Window(size=(1280, 800), fullscr=True, screen=0, monitor='testMonitor', color=[-1,-1,-1], colorSpace='rgb')

teststimulus = visual.ImageStim(win=win,
    image= c, mask=None,
    ori=0, pos=pos1, size=[0.5,0.5],
    color=[1,1,1], colorSpace='rgb', opacity=1,
    flipHoriz=False, flipVert=False,
    texRes=128, interpolate=True, depth=-1.0)

teststimulus.setAutoDraw(True)
win.flip()
event.waitKeys(keyList = ['space'])

这个程序应该做的是洗牌顺序的图片显示。不管出于什么原因,当我这样做时,它只会显示一个白块。我确定问题是洗牌功能,因为它工作得很好,我试图显示一个静态图片。你有什么建议吗?任何帮助将不胜感激。:)


Tags: imagefalsetruesizepnggreenrgbred
1条回答
网友
1楼 · 发布于 2024-09-27 22:34:14

我确实觉得Python中有一些东西是必须习惯的。有一点是,对象通常是“就地”处理的。这对shuffle也是如此。实际上,使用b就可以了。Python只是对list参数本身进行无序处理。因此,每次调用shuffle(b)时,您将得到b对象中两个图片名称的随机排序(可以省略“c=”部分)。在

查看代码,您仍然需要为ImageStim选择一张图片,因为列表始终保持相同的大小(两个图片名称,只是在每次调用后随机排序)。所以你必须做类似image=b[0](名字)或image=b[1](第二个名字)之类的事情。在

我没有检查所有的代码,所以我不知道它是否会运行。在

最好的

阿克塞尔

相关问题 更多 >

    热门问题