SHOW:
|
|
- or go back to the newest paste.
1 | baza_gier = [] | |
2 | nazwa_pliku = "staty.txt" #Dla wygody zapisujemy to w zmiennej aby się nie pomylić | |
3 | plik = open(nazwa_pliku, "a") | |
4 | plik.close() | |
5 | plik = open(nazwa_pliku, "r") | |
6 | for line in plik: | |
7 | line = line.replace("\n", "")# usuwamy enter z końca linii | |
8 | gra = line.split('|') | |
9 | baza_gier.append(gra) | |
10 | plik.close() | |
11 | ||
12 | lista_naglowkow = ["Tytuł", "Ilość rozegranych partii", "Ilość wygranych partii", "Stosunek wygranych partii do wszystkich partii"] | |
13 | menu = ["Dodaj nową grę", "Zarejestruj nową rozgrywkę","Zobacz statystyki gry", "Usuń grę ze statystyk", "Zakończ"] | |
14 | ||
15 | def pokaz_menu(): | |
16 | for i in range(len(menu)): | |
17 | print(f"{i+1}. {menu[i]}") | |
18 | wybor = int(input("Podaj wybór: ")) | |
19 | return wybor | |
20 | ||
21 | def dodaj_nowa_gre(): | |
22 | tytul = input("Podaj tytuł nowej gry: ") | |
23 | gra = [tytul, 0,0,0] #na start dla każdej satystyki 0 | |
24 | baza_gier.append(gra) | |
25 | ||
26 | def wybierz_gre(): | |
27 | for i in range(len(baza_gier)): | |
28 | print(f"{i+1}. {baza_gier[i][0]}") | |
29 | wybrana = 0 | |
30 | while wybrana <= 0 or wybrana > len(baza_gier): | |
31 | wybrana = int(input("Wybierz numer gry: ")) | |
32 | if wybrana <= 0 or wybrana > len(baza_gier): | |
33 | print("Taka gra nie istnieje w bazie") | |
34 | return wybrana-1 | |
35 | ||
36 | def dopisz_rozgrywke(numer_gry): | |
37 | gra = baza_gier[numer_gry] | |
38 | gra[1] += 1 #zwiększamy ilość rozgrywek | |
39 | czy_wygrana = input("Czy partia została wygrana? (tak/nie) ") | |
40 | czy_wygrana = czy_wygrana.lower() | |
41 | if czy_wygrana == "tak": | |
42 | gra[2] += 1 #zwiększamy ilość wygranych | |
43 | procent = gra[1]/gra[2] * 100 #Obliczamy procent wygranych rozgrywek | |
44 | gra[3] = procent | |
45 | baza_gier[numer_gry] = gra | |
46 | ||
47 | def pokaz_statystyki_gry(numer_gry): | |
48 | gra = baza_gier[numer_gry] | |
49 | for i in range(len(lista_naglowkow)): | |
50 | print(f"{lista_naglowkow[i]}: {gra[i]}") | |
51 | ||
52 | ||
53 | def usuwanie_gry(numer_gry): | |
54 | tytul = baza_gier[numer_gry][0] | |
55 | czy_napewno = input(f"Czy napewno checesz usunąć z listy {tytul}? ") | |
56 | czy_napewno = czy_napewno.lower() | |
57 | if czy_napewno == "tak": | |
58 | baza_gier.pop(numer_gry) | |
59 | ||
60 | def zapis_do_pliku(): | |
61 | plik = open(nazwa_pliku, "w") | |
62 | for gra in baza_gier: | |
63 | linia = "|".join(gra) | |
64 | plik.write(linia + "\n") | |
65 | plik.close() | |
66 | ||
67 | czy_koniec = False | |
68 | while not czy_koniec: | |
69 | print("___________________") | |
70 | wybor = pokaz_menu() | |
71 | if wybor == 1: | |
72 | print("Dodaj nową grę") | |
73 | dodaj_nowa_gre() | |
74 | elif wybor == 2 and len(baza_gier) != 0: | |
75 | print("Zarejestruj nową rozgrywkę") | |
76 | wybrana_gra = wybierz_gre() | |
77 | dopisz_rozgrywke(wybrana_gra) | |
78 | elif wybor == 3 and len(baza_gier) != 0: | |
79 | print("Zobacz statystki gry") | |
80 | wybrana_gra = wybierz_gre() | |
81 | pokaz_statystyki_gry(wybrana_gra) | |
82 | elif wybor == 4 and len(baza_gier) != 0: | |
83 | print("Usuń grę ze statystyk") | |
84 | wybrana_gra = wybierz_gre() | |
85 | usuwanie_gry(wybrana_gra) | |
86 | elif wybor == 5: | |
87 | print("Koniec programu") | |
88 | zapis_do_pliku() | |
89 | czy_koniec = True | |
90 | elif 2 >= wybor <= 4 and len(baza_gier) == 0: | |
91 | print("Baza gier jest pusta - Akcja niedozwolona") | |
92 | else: | |
93 | print("Zły wybór") | |
94 |