我借助图像为我4岁的女儿做一个简单的数学学习计划。 根据我们可以调用X的随机数,for循环将运行X次并打印图像X次。图像将通过随机数从列表中选择,我们也可以调用Y.
如果X为2,则使用for循环将图像Y打印到屏幕2次。
问题是我不知道该怎么做。 :P 如果有人能帮助我,我将不胜感激!我正在使用python 3.2和Tkinter。
以下是我的图片列表的示例代码。
self.imageListRegular = []
self.imageListRegular.append(ImageTk.PhotoImage(file="Bilder/Bird-icon.png"))
self.imageListRegular.append(ImageTk.PhotoImage(file="Bilder/elephant-icon.png"))
self.imageListRegular.append(ImageTk.PhotoImage(file="Bilder/fish-icon.png"))
self.imageListRegular.append(ImageTk.PhotoImage(file="Bilder/ladybird-icon.png"))
self.imageListRegular.append(ImageTk.PhotoImage(file="Bilder/zebra-icon.png"))
真诚地,罗伯特
答案 0 :(得分:1)
使用python random
模块
import random
image = random.choice(self.imageListRegular) #this is your 'Y' variable
times = random.randint(1, 4) #this is your 'X' variable
然后你做循环,我想这看起来像这样(我没有Tkinter,所以我不能测试代码。这来自样本here):
import Tkinter
root = Tkinter.Tk()
for i in xrange(times):
Tkinter.Label(root, image=image).pack()
root.mainloop() # Start the GUI
random.choice
会返回给定序列中的随机元素,因此random.choice(["apples", "bananas", "oranges"])
将返回" apples"," bananas"或" oranges& #34;
random.randint(low, high)
将返回低和高之间的随机整数,包括低和高。因此,如果您希望在1到4次之间显示图像,random.randint(1, 4)
就可以了。