locals是一个内置函数,返回本地值的字典.文件说:
警告
不应修改此词典的内容; 更改可能不会影响解释器使用的局部变量的值.
不幸的是,exec在Python 3.0中也有同样的问题.这有什么办法吗?
用例
考虑:
@depends("a", "b", "c", "d", "e", "f")
def test():
put_into_locals(test.dependencies)
Run Code Online (Sandbox Code Playgroud)
depends将其参数中提供的字符串存储在列表中test.dependences.这些字符串是字典中的键d.我希望能够编写,put_into_locals以便我们可以将值拉出d并将它们放入本地.这可能吗?
from Tkinter import *
from tkFileDialog import askopenfilename
from PIL import Image
def main():
filename = askopenfilename(filetypes=[("Jpeg","*.jpg")])
return filename
root = Tk()
button = Button(root,text="Open",command=main)
button.pack()
root.title("Image Manipulation Program")
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
我是一般的编程新手,但我试图通过Tkinter GUI库制作成像程序.我需要能够在上面的代码中做的是返回存储在filename中的字符串,以便它在程序的全局范围内,并且我能够使用它.问题是我用按钮调用函数时不知道怎么做.我无法在任何网站上找到这个问题的答案,所以我很感激任何人对这个问题的帮助.