这是我的工作代码:Python:“选择”功能似乎没有按照我的要求工作。
import sys
from tkinter import *
from random import choice
def motiv():
motiv1 = mLabel = Label(text='Waste not, want not', fg="red").pack()
motiv2 = mLabel = Label(text='Sticks and stones', fg="red").pack()
motiv3 = mLabel = Label(text='Keep holding on', fg="red").pack()
motiv4 = mLabel = Label(text='Hold On, Pain Ends', fg="red").pack()
ranMotiv = [motiv1, motiv2, motiv3, motiv4]
print (choice(ranMotiv))
mGui = Tk()
mGui.geometry('450x450+500+150')
mGui.title('RMM')
mLabel = Label(text='Welcome to the Random Motivation Machine', fg="red").pack()
mButton = Button(text = "Click for Some Motivation", command = motiv)
mButton.pack()
mGui.mainloop()
有没有错误,但它使打印出所有这些案文在同一时间,当我是想只打印出来只有一个他们随机。
我的目标是让某人按下按钮,然后在GUI窗口中弹出一个随机短语。
所以有人按下按钮,只是任何的四个文本短语的一个出来的窗口:
1.Waste,吃穿不缺。
2.坚持和结石
3.坚持下去。
4.持续,疼痛结束。
我相信我的烦恼是从这个区域就在这里出现:
ranMotiv = [motiv1, motiv2, motiv3, motiv4]
print (choice(ranMotiv))
有没有人有什么想法?这只是我的一个非常小的宠物项目。我只用了不到几个月的Python,所以我不太聪明。顺便说一句,我正在运行Python 3.2.5。谢谢大家。
请勿立即打包标签。创建一个文本列表,然后在其中一个'random.choice'中,将其转换为标签并打包 – inspectorG4dget
非常感谢。我希望我早一点想到这一点。这绝对有很多意义。我只是实现了你的建议,它的运行非常好,只是我想要的。再次谢谢你。 – CaptainProdigy