Python Tkinter图像函数不返回任何内容

Python Tkinter图像函数不返回任何内容,python,image,tkinter,Python,Image,Tkinter,我的问题是,当我调用image1时,它可以工作,但根本不显示任何图像 以下是程序的完整代码: from Tkinter import * from PIL import Image, ImageTk import random root = Tk() n = random.randint(1,1) def image1(): image = Image.open("400.jpg") image = image.resize((500, 250), Image.ANTIALIA

我的问题是,当我调用
image1
时,它可以工作,但根本不显示任何图像

以下是程序的完整代码:

from Tkinter import *
from PIL import Image, ImageTk
import random
root = Tk()
n = random.randint(1,1)
def image1():
    image = Image.open("400.jpg")
    image = image.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image)
def image2():
    image = Image.open("236.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image2)
def image3():
    image = Image.open("258.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image3)
def image4():
    image = Image.open("20130818_145719.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image4)
def image5() :
    image = Image.open("DSC01190.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image5)
def image6():
    image = Image.open("DSC01472.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image6)
def image7():
    image = Image.open("IMG_0029.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image7)
def image8():
    image = Image.open("IMG_0204.jpg")
    image = image1.resize((500, 250), Image.ANTIALIAS)
    photo = ImageTk.PhotoImage(image8)


label = Label(image=image1()) # keep a reference!
label.pack()
root.mainloop()
加:


由于对图像的引用需要出现在希望显示的范围内。

逐字搜索。
#保留引用你真的应该阅读你正在使用的代码。谢谢你,很抱歉没有遵守规则
...
reference_to_the_image = image1()
label = Label(image=reference_to_the_image)
...