所以我有这段代码,它只在python shell中打印出来,我想知道如何使用tkinter中的标签获取单词并将它们放入网格中。很抱歉我没有解释。
import random
with open('Words.txt') as f:
words = random.sample([x.rstrip() for x in f],9)
grid = [words[i:i +3] for i in range(0, len(words),3)]
for x,y,z in grid:
print(x,y,z)
答案 0 :(得分:1)
这应该让你开始。我通常使用pack来完成我的项目。但为此,我建议使用网格,因为它可以让您轻松定位标签。
import tkinter as tk
words = [['Word 1', 'Word 2', 'Word 3'],\
['Word 4', 'Word 5', 'Word 6'],\
['Word 7', 'Word 8', 'Word 9']]
root = tk.Tk()
for i, (x, y, z) in enumerate(words):
tk.Label(root, text=x).grid(row=i, column=0)
tk.Label(root, text=y).grid(row=i, column=1)
tk.Label(root, text=z).grid(row=i, column=2)
root.mainloop()
答案 1 :(得分:0)
使用现有代码的另一种答案,在Python 3中:
import random
from tkinter import *
root = Tk()
with open('Words.txt') as f:
words = random.sample([x.rstrip() for x in f],9)
grid = [words[i:i +3] for i in range(0, len(words),3)]
for i, (x,y,z) in grid:
Label(root, text=x).grid(row=i, column=0)
Label(root, text=y).grid(row=i, column=1)
Label(root, text=z).grid(row=i, column=2)
root.mainloop()
无法为您测试,因为没有样本数据但应该有效。