Symulator LOTTO

0

Witam, niedawno zacząłem naukę pythona i mam problem z następującym zadaniem: Jak wszystkim wiadomo, LOTTO to gra liczbowa polegająca na losowaniu 6 liczb z zakresu 1–49. Zadaniem gracza jest poprawne wytypowanie losowanych liczb. Nagradzane jest trafienie 3, 4, 5 lub 6 poprawnych liczb.

Napisz program, który:

1.zapyta o typowane liczby, przy okazji sprawdzi następujące warunki:
2. czy wprowadzony ciąg znaków jest poprawną liczbą,
3. czy użytkownik nie wpisał tej liczby już poprzednio,*
4. czy liczba należy do zakresu 1-49,
5. po wprowadzeniu 6 liczb, posortuje je rosnąco i wyświetli na ekranie,
6. wylosuje 6 liczb z zakresu i wyświetli je na ekranie,
7. poinformuje gracza, czy trafił przynajmniej "trójkę".

Napisałem coś takiego, ale nie wiem jak zabezpieczyć się przed punktem 3. Ktoś pomoże? z góry THX.
import random

losowe = random.sample(range(1, 50),6)
losowe.sort()
print(losowe)

guessed = False

while True:#not guessed
wynik =[]
liczby_gracza = input("Podaj 6 liczb jedna po drugiej: ")
lista_liczb = liczby_gracza.split(",")
print(lista_liczb)
for liczba in lista_liczb:
try:
liczba = int(liczba)
except ValueError as e:
print("Zła wartosć", e)
continue
if liczba >= 1 and liczba <= 49:
wynik.append(liczba)
else:
continue
wynik.sort()
print(wynik)
trafione =[]
for i in wynik:
if i in losowe:
trafione.append(i)
print("Trafione liczby to: ", trafione)
break

1

Po pierwsze umieszczaj kod w stosownych znacznikach, teraz jest nieczytelny. Po drugie po podaniu liczb przez użytkownika sprawdź czy się nie powtarzają.

0

nie wiem jak zabezpieczyć się przed punktem 3

Zastosuj array.count:

if wynik.count(liczba) > 0:
    print("Wprowadzona przez Ciebie liczba już wystąpiła")
    # tutaj pewnie ponowna próba lub zakończenie wykonywania skryptu

1 użytkowników online, w tym zalogowanych: 0, gości: 1