Python 如何使用Tkinter在多行字符串中分配和调用多个变量
我正在学习编码,刚刚开始学习python。我构建了我的第一个“我自己”的应用程序,我计划在发送DHCP请求时使用它来自动化工作中的一些键入。我在调用多行字符串中设置为变量的多个条目时遇到问题。我尝试在条目()中使用StringVar()和textvariable。如有任何建议,将不胜感激。我相信问题在于str1变量,但我缺乏经验和理解,这让我感到困惑。结果返回的变量是PY_VAR0,这意味着我把事情搞砸了,程序不知道该去哪里看(我想)Python 如何使用Tkinter在多行字符串中分配和调用多个变量,python,tkinter,Python,Tkinter,我正在学习编码,刚刚开始学习python。我构建了我的第一个“我自己”的应用程序,我计划在发送DHCP请求时使用它来自动化工作中的一些键入。我在调用多行字符串中设置为变量的多个条目时遇到问题。我尝试在条目()中使用StringVar()和textvariable。如有任何建议,将不胜感激。我相信问题在于str1变量,但我缺乏经验和理解,这让我感到困惑。结果返回的变量是PY_VAR0,这意味着我把事情搞砸了,程序不知道该去哪里看(我想) 代码中有两个主要问题: StringVar的用法 构建st
代码中有两个主要问题:
- StringVar的用法
- 构建str1的时间
get()
-方法访问的。因此,您的字符串构建应该如下所示:
str1= """host %s
{
hardware ethernet %s ;
fixed-address %s ;
option host-name %s ;
}"""%(pc_name.get(), mac_add.get(), ip_add.get(), pc_name.get())
此分配应在dhcp回调内完成。为什么?因为用户按下按钮时,而不是创建元素时,您需要读取数据
#Definitions
def dhcp():
str1= """host %s
{
hardware ethernet %s ;
fixed-address %s ;
option host-name %s ;
}"""%(pc_name.get(), mac_add.get(), ip_add.get(), pc_name.get())
print str1
我不明白。。。你在用多行字符串做什么?如果您想在
StringVar
中获取值,您需要使用pc\u name.get()
等,但在初始化后立即执行此操作并没有多大帮助。我需要将用户输入的entry1中的pc\u name字符串插入到str1中第一个和最后一个%s的dhcp中。好的。。。因此,去掉%(pc\u name,mac\u add,ip\u add,pc\u name)
并将带有格式标记的字符串存储在适当的位置,然后在需要获得格式化版本时,执行formatted\u str=str1%(pc\u name.get(),mac\u add.get(),ip\u add.get(),pc\u name.get())
文字无法表达我多么感谢您的帮助和知识。我仍在学习事情是如何运作的。它就像一个符咒。我是否可以使用像tkMessageBox这样的输出,但我希望能够复制输出文本。
#Definitions
def dhcp():
str1= """host %s
{
hardware ethernet %s ;
fixed-address %s ;
option host-name %s ;
}"""%(pc_name.get(), mac_add.get(), ip_add.get(), pc_name.get())
print str1