我想知道当我在IDLE之外运行时,如何在窗口而不是CMD中获取代码。我使用此代码与菜单,使用tkinter。提前致谢。另外如果您知道如何缩短此代码,请告诉我。谢谢!
def Castle ():
import random
repeat = "True"
RSN = random.randint(1, 6);
while (repeat == "True"):
print("\nCastle:")
print("\nThe Random Season Chosen is Season", RSN)
if RSN == 1:
print("and The Random Episode Chosen is Episode", random.randint(1, 10))
elif RSN == 2:
print("and The Random Episode Chosen is Episode", random.randint(1, 24))
elif RSN == 3:
print("and The Random Episode Chosen is Episode", random.randint(1, 24))
elif RSN == 4:
print("and The Random Episode Chosen is Episode", random.randint(1, 23))
elif RSN == 5:
print("and The Random Episode Chosen is Episode", random.randint(1, 24))
elif RSN == 6:
print("and The Random Episode Chosen is Episode", random.randint(1, 23))
RSN = random.randint(1, 6);
repeat = input ("\nDo You Want To Run Again?: ")
Castle ();
No = print ("\nPress Enter To Exit")
答案 0 :(得分:0)
这个网站并不是人们为某人编写完整的程序,但是既然你正在学习,并且显然还有一位也在学习的老师,我会告诉你一个完整的工作实例。
注意:这不是编写程序的最佳方式。它甚至不是我编写程序的方式,因为我需要更多object-oriented approach。我试图做的就是编写最简单的程序。
import tkinter as tk
import random
# Define some data. For each series, define the number of
# episodes in each season. For this example we're only defining
# one series.
APP_DATA = {"Castle": [10, 24, 24, 23, 24, 23]}
# Define which element of APP_DATA we want to use
SERIES="Castle"
# Define a function that can update the display with new results
def update_display():
max_seasons = len(APP_DATA[SERIES])
season = random.randint(1, max_seasons)
# Note: list indexes start at zero, not one.
# So season 1 is at index 0, etc
max_episodes = APP_DATA[SERIES][season-1]
episode = random.randint(1, max_episodes)
text.delete("1.0", "end")
text.insert("insert", "%s:\n" % SERIES)
text.insert("insert", "The Random Season Chosen is Season %s\n" % str(season))
text.insert("insert", "The Random Episode Chosen is Episode %s\n" % str(episode))
# Create a root window
root = tk.Tk()
# Create a text widget to "print" to:
text = tk.Text(root, width=40, height=4)
# Create a button to update the display
run_button = tk.Button(root, text="Click to run again", command=update_display)
# Arrange the widgets on the screen
text.pack(side="top", fill="both", expand=True)
run_button.pack(side="bottom")
# Display the first random values
update_display()
# Enter a loop, which will let the user click the button
# whenever they want
root.mainloop()