Я хочу использовать только встроенную систему открытия файлов pythons. В каждом раунде пять игроков, но только 3 выигрывают в первом, втором и третьем порядке. Идентификатор игрока добавляется в массив, называемый победителями, например, если выигрывают черепаха 0,3 и 4:
winners = [0,3,4]
элемент 0 в победителях всегда первый позиция, элемент 1 - второй, а элемент 2 - третий
, теперь в текстовом файле я хочу обновить счет в следующем формате:
Turtle1 первый: 1 секунда: 0 третий: 3
Черепаха2 первый: 0 секунд: 1 третий: 0
Черепаха3 первый: 2 секунды: 1 третий: 0
Черепаха4 первый: 0 секунд: 0 третий: 0
Turtle5 первый: 1 секунда: 2 третий: 1
и я хочу переносить счет каждый раз, когда играю в игру
Я открываю файл в КОНЦЕ кода
import turtle
import random
import time
window_width=600
window_height=400
window=turtle.Screen()
window.setup(window_width,window_height)
#All the pens i'm using
start_pen=turtle.Turtle()
start_pen.speed(0)
start_pen.hideturtle()
start_pen.pensize(1.5)
start_pen.penup()
square_pen=turtle.Turtle()
square_pen.speed(0)
square_pen.hideturtle()
square_pen.shape("square")
square_pen.turtlesize(0.75)
square_pen.penup()
turtle_pen=turtle.Turtle()
turtle_pen.speed(0)
turtle_pen.hideturtle()
turtle_pen.penup()
turtle_pen.shape("turtle")
colors=["red","blue","green","pink","orange"]
positions=[[-210,180],[-210,108],[-210,36],[-210,-36],[-210,-108]]
winners=[]
def draw_square(x,y):
square_pen.setpos(x,y)
square_pen.stamp()
def draw_start():
start_pen.setpos(-210,210)
start_pen.pendown()
start_pen.left(270)
start_pen.fd(420)
start_pen.penup()
def draw_finish():
offset=30
x=200
y=200
for i in range(0,15):
draw_square(x,y)
y-=offset
x-=(offset/2)
y+=(offset/2)
for i in range(0,15):
draw_square(x,y)
y+=offset
def stamp_turtle(x,y,color):
turtle_pen.setpos(x,y)
turtle_pen.color(color)
turtle_pen.stamp()
def determine_new_positions(positions):
speed=30
random_number=random.randint(0,4)
if random_number not in winners:
positions[random_number][0]+=speed
else:
determine_new_positions(positions)
return positions
def determine_winners():
for i in range(0,5):
if positions[i][0]>=180 and i not in winners:
winners.append(i)
def main():
turtle.tracer(0,0)
turtle_pen.clearstamps()
for i in range (0,5):
stamp_turtle(positions[i][0],positions[i][1],colors[i])
determine_new_positions(positions)
determine_winners()
turtle.update()
#time.sleep(0.2)
draw_finish()
draw_start()
while len(winners)<=3:
main()
file= open("history.txt","r")
alltext=file.read()
file= open("history.txt","r")
for i in range(0,5):
line=file.readline()
if i==winners[0]:
print(line[14])
elif i==winners[1]:
print(line[23])
elif i ==winners[2]:
print(line[31])
print(alltext)