从另一个文件获取变量-python
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从另一个文件获取变量-python,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1383字,纯文字阅读大概需要2分钟。
内容图文
![从另一个文件获取变量-python](/upload/InfoBanner/zyjiaocheng/690/c2a1360f404f472ebc25ac2de50f8c2b.jpg)
我正在创建一个Tkinter程序,该程序允许用户将文本输入一个漂亮的框而不是python shell.
因为我想在多个程序中使用它,所以我将其做成一个可以在其他文件中使用的函数.
我可以让它在另一个文件中运行,但不能导入变量,这是我的代码.
文件1:
import tkinter as tk
def input_text(label_text, button_text):
class SampleApp(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.entry = tk.Entry(self)
self.button = tk.Button(self, text=button_text, command=self.on_button)
self.label = tk.Label(self, text=label_text)
self.label.pack(side = 'top', pady = 5)
self.button.pack(side = 'bottom', pady = 5)
self.entry.pack()
def on_button(self):
answer = self.entry.get()
self.destroy()
w = SampleApp()
w.resizable(width=True, height=True)
w.geometry('{}x{}'.format(180, 90))
w.mainloop()
档案2:
import text_input as ti
from text_input import answer
ti.input_text('Enter some text', 'OK')
我收到错误ImportError:无法导入名称“答案”
解决方法:
答案是按钮内的局部变量.如果要导入`,则需要将其设置为package属性:
import tkinter as tk
global answer
def input_text(label_text, button_text):
class SampleApp(tk.Tk):
...
def on_button(self):
global answer
answer = self.entry.get()
但是,这是一种非常奇怪的访问数据的方式.干净的模块设计可能会拥有对象(SampleApp),并使用该应用程序的方法调用提取答案.更简单地说,为什么不从on_button返回该值?
def on_button(self):
answer = self.entry.get()
self.destroy()
return answer
…所以你的用法是
response = my_app.on_button()
内容总结
以上是互联网集市为您收集整理的从另一个文件获取变量-python全部内容,希望文章能够帮你解决从另一个文件获取变量-python所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。