我正在尝试读取 YAML 文件并按照文件中的顺序打印出其中的列表。
所以 YAML:
b: ...
a: ...
Run Code Online (Sandbox Code Playgroud)
我的蟒蛇是:
for key, value in yaml.load(open(input_file)).items():
print(str(key))
Run Code Online (Sandbox Code Playgroud)
输出变为:
a
b
Run Code Online (Sandbox Code Playgroud)
但我需要它是b那时a。我也尝试过iteritems(),得到了同样的结果。
我试图让我的程序根据下拉菜单中选择的变量更改文本,但激活命令的按钮似乎不起作用。从我所看到的,选择函数在程序加载后运行,然后再也不会运行,无论我何时单击按钮。
from Tkinter import *
class App:
def __init__(self, root):
self.title = Label(root, text="Choose a food: ",
justify = LEFT, padx = 20).pack()
self.label = Label(root, text = "Please select a food.")
self.label.pack()
self.var = StringVar()
self.var.set("Apple")
food = ["Apple", "Banana", "Pear"]
option = apply(OptionMenu, (root, self.var) + tuple(food))
option.pack()
button = Button(root, text = "Choose", command=self.select())
button.pack()
def select(self):
selection = "You selected the food: " + self.var.get()
print(self.var.get()) #debug message
self.label.config(text = selection)
if __name__ == '__main__':
root …Run Code Online (Sandbox Code Playgroud)