Untitled
unknown
plain_text
2 years ago
3.5 kB
8
Indexable
from turtle import Turtle, Screen #imports the Turtle and Screen classes from the turtle module #these classes are used to create turtle graphics and the screen to display them. import random #is used to generate random numbers is_race_on = False #This line initializes a Boolean variable called is_race_on to False. #This variable is used to control the loop that runs the race. screen = Screen() screen.setup(width=500, height=400) #This line creates a new Screen object and sets its size to 500 pixels wide and 400 pixels tall user_bet = screen.textinput(title="Make your bet", prompt="Which turtle will win the race? Enter a color: ") #This line displays a pop-up window with a message and a text input field. #The message asks the user to enter the color of the turtle they think will win the race. colors = ["red", "orange", "yellow", "green", "blue", "purple"]#This line creates a list of turtle colors that will be used to #create the turtles for the race y_positions = [-70, -40, -10, 20, 50, 80] #This line creates a list of y-coordinates that will be used to position the turtles on the screen. all_turtles = [] # creates an empty list called all_turtles #This loop creates six turtle objects with a turtle shape, sets the turtle's pen to the up position, #sets the turtle's color to a value from the colors list, and positions the turtle at a specific location #on the screen using x and y coordinates from the y_positions list.Each turtle object is added to the all_turtles list. for turtle_index in range(0, 6): new_turtle = Turtle(shape="turtle") new_turtle.penup() new_turtle.color(colors[turtle_index]) new_turtle.goto(x=-230, y=y_positions[turtle_index]) all_turtles.append(new_turtle) if user_bet: is_race_on = True #This line checks if the user_bet variable has a value #(i.e., the user entered a bet) and sets the is_race_on variable to True. while is_race_on: for turtle in all_turtles: #230 is 250 - half the width of the turtle. if turtle.xcor() > 230: is_race_on = False winning_color = turtle.pencolor() if winning_color == user_bet: print(f"You've won! The {winning_color} turtle is the winner!") else: print(f"You've lost! The {winning_color} turtle is the winner!") #Make each turtle move a random amount. rand_distance = random.randint(0, 10) turtle.forward(rand_distance) #This loop runs as long as the is_race_on variable is True. It iterates through each turtle in the all_turtles list and moves it #forward a random distance. If a turtle's x-coordinate is greater than 230, the loop is terminated, and the winning turtle's #color is determined. If the winning turtle's color matches the user_bet variable, a message is printed to the console indicating #that the user won. If not, a message is printed to the console indicating screen.exitonclick() #This line waits for the user to click the screen before closing it. Once the user clicks the screen, the exitonclick() method is #called on the screen object, which terminates the program and closes the window. This is a way to keep the window open and #give the user a chance to see the final result of the race before closing the program.
Editor is loading...