+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

需要为父函数返回值-python

发布于2021-02-19 12:52     阅读(1029)     评论(0)     点赞(28)     收藏(5)


0

1

2

3

4

5

6

我在Mac OSX上使用python 2.7.5

在我的代码中,我有一个需要返回值的函数。在函数中,我希望我的回调函数(tkinter)使它的父函数返回一个值,但是如果有更好的方法,请说一下。很抱歉,如果我不清楚,因为我不确定如何解释我的问题。

def Open():
    class dataC:
        lines=[]
    data=dataC


    def event():
        path=pathE.get()
        file=fileE.get()

        try:
            os.chdir(path)

            temp=open(file)
            lines=temp.readlines()
            temp.close()
        except:
            lines=[]
        else:
            os.chdir(path)

            temp=open(file)
            lines=temp.readlines()
            temp.close()

        data.lines=lines


    gui=Tk()
    gui.title("Open File")

    pathE=Entry(gui)
    pathE.pack(padx=5,pady=5)
    pathE.insert(INSERT,startingDir)

    fileE=Entry(gui)
    fileE.pack(padx=5,pady=5)
    fileE.insert(INSERT,"File Name")

    openE=Button(gui,text="Open File",command=event)
    openE.pack(padx=5,pady=5)
    gui.mainloop()

解决方案


由于您要在其中返回一个值,因此Open()我认为应在单击按钮后立即退出mainloop。所以你必须添加行

gui.quit()

或者

gui.destroy()

在中event()您可以将要返回的值保存在时的本地变量Open()event(),就像您已经使用过的那样,data然后mainloop在行之后返回它

0

1

2

3

4



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接: https://www.pythonheidong.com/blog/article/834790/03e5852707ee9f2f120f/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

28 0
收藏该文
已收藏

评论内容:(最多支持255个字符)