Home » Articole » Articole » Calculatoare » Programare » Python » Python: Exemple de liste

Python: Exemple de liste

postat în: Python 0

test.py

## Acest program rulează un test de cunoștințe

# În primul rând, primește întrebările de test
# Mai târziu, acesta va fi modificat pentru a utiliza fișierul io.
def get_questions():
    # observați cum datele sunt stocate ca o listă de liste
    return [["What color is the daytime sky on a clear day? ", "blue"],
            ["What is the answer to life, the universe and everything? ", "42"],
            ["What is a three letter word for mouse trap? ", "cat"]]

# Aceasta va testa o singură întrebare
# ia în considerare o singură întrebare
# returnează True dacă utilizatorul a tastat răspunsul corect, în caz contrar False

def check_question(question_and_answer):
    # extrage întrebarea și răspunsul din listă
    # Această funcție preia o listă cu două elemente, o întrebare și un răspuns.  
    question = question_and_answer[0]   
    answer = question_and_answer[1]
    # dă întrebarea utilizatorului
    given_answer = input(question)
    # compară răspunsul utilizatorului cu răspunsul testerului
    if answer == given_answer:
        print("Correct")
        return True
    else:
        print("Incorrect, correct was:", answer)
        return False

# Aceasta va trece prin toate întrebările
def run_test(questions):
    if len(questions) == 0:
        print("No questions were given.")
        # return iese din funcție
        return
    index = 0
    right = 0
    while index < len(questions):
        # Verifică întrebarea
        #Rețineți că aceasta este extragerea unei liste de întrebări și răspunsuri din lista de liste.
        if check_question(questions[index]): 
            right = right + 1
        # trece la următoarea întrebare
        index = index + 1
    # observați ordinea calculului, mai întâi înmulțire, apoi împărțire
    print("You got", right * 100 / len(questions),\
           "% right out of", len(questions))

# acum obține întrebările din funcția get_questions, și 
# trimite lista returnată de liste ca argument la funcția run_test.

run_test(get_questions())

Valorile True și False indică 1 și, respectiv, 0. Ele sunt adesea folosite în verificări de sănătate, condiții de buclă etc. Veți afla mai multe despre acest lucru puțin mai târziu (capitolul Expresii booleene). Vă rugăm să rețineți că get_questions() este în esență o listă, deoarece, deși din punct de vedere tehnic este o funcție, returnarea unei liste de liste este singurul lucru pe care îl face.

Rezulat eșantion:

What color is the daytime sky on a clear day? green
Incorrect, correct was: blue
What is the answer to life, the universe and everything? 42
Correct
What is a three letter word for mouse trap? cat
Correct
You got 66 % right out of 3

Exerciții

Extindeți programul test.py, astfel încât să aibă un meniu care oferă opțiunea de a susține testul, vizualizarea listei de întrebări și răspunsuri și o opțiune de a renunța. De asemenea, adăugați o nouă întrebare pentru a pune: „What noise does a truly advanced machine make?” cu răspunsul de „ping”.

Soluție

## Acest program rulează un test de cunoștințe

questions = [["What color is the daytime sky on a clear day? ", "blue"],
             ["What is the answer to life, the universe and everything? ", "42"],
             ["What is a three letter word for mouse trap? ", "cat"],
             ["What noise does a truly advanced machine make?", "ping"]]

# Aceasta va testa o singură întrebare
# ia în considerare o singură întrebare
# returnează True dacă utilizatorul a tastat răspunsul corect, în caz contrar False

def check_question(question_and_answer):
    # extrage întrebarea și răspunsul din listă
    question = question_and_answer[0]
    answer = question_and_answer[1]
    # dă întrebarea utilizatorului
    given_answer = input(question)
    # compară răspunsul utilizatorului cu răspunsul testatorilor
    if answer == given_answer:
        print("Correct")
        return True
    else:
        print("Incorrect, correct was:", answer)
        return False

# Aceasta va trece prin toate întrebările

def run_test(questions):

    if len(questions) == 0:
        print("No questions were given.")
        # return iese din funcție
        return
    index = 0
    right = 0
    while index < len(questions):
        # Verifică întrebarea
        if check_question(questions[index]):
            right = right + 1
        # trece la următoarea întrebare
        index = index + 1
    # observați ordinea calculului, mai întâi înmulțire, apoi împărțire
    print("You got", right * 100 / len(questions),
           "% right out of", len(questions))

#arătând o listă de întrebări și răspunsuri
def showquestions():
    q = 0
    while q < len(questions):
        a = 0
        print("Q:" , questions[q][a])
        a = 1
        print("A:" , questions[q][a])
        q = q + 1

# acum să definim funcția de meniu
def menu():
    print("-----------------")
    print("Menu:")
    print("1 - Take the test")
    print("2 - View a list of questions and answers")
    print("3 - View the menu")
    print("5 - Quit")
    print("-----------------")

choice = "3"
while choice != "5":
    if choice == "1":
        run_test(questions)
    elif choice == "2":
        showquestions()
    elif choice == "3":
        menu()
    print()
    choice = input("Choose your option from the menu above: ")

(Include texte din Wikibooks traduse și adaptate de Nicolae Sfetcu)

Căutarea, extragerea, organizarea și evaluarea informațiilor
Căutarea, extragerea, organizarea și evaluarea informațiilor

Informația, ca și concept, include o mare diversitate de sensuri în contexte diferite, de la cele zilnice până la cele tehnice. Conceptul de informație este strâns legat de noțiunile de restricție, comunicare, control, date, forme, educație, cunoaștere, înțelegere, stimul mental, … Citeşte mai mult

Nu a fost votat 19.07 lei45.93 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Tehnologia Blockchain - Bitcoin
Tehnologia Blockchain – Bitcoin

Internetul a schimbat complet lumea, cultura şi obiceiurile oamenilor. După o primă fază caracterizată prin transferul liber al informaţiilor, au apărut preocupările pentru siguranţa comunicaţiilor online şi confidenţialitatea utilizatorilor. Tehnologia blockchain asigură ambele aceste deziderate. Relativ nouă, ea are şansa să producă … Citeşte mai mult

Nu a fost votat 23.85 lei57.31 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Statistica pentru afaceri
Statistica pentru afaceri

Statistica pentru afaceri este un ghid practic elementar de statistică, cu eșantioanele de date și exemplele orientate spre afaceri. Statistica face posibilă analiza problemelor de afaceri din lumea reală cu date reale, astfel încât să puteți determina dacă o strategie … Citeşte mai mult

Nu a fost votat 19.07 lei40.87 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *