This is my final excersise from (Much appreciated) codecademy's CS101, a terminal game that applies a trivia in spanish, it creates a player and returns a score.
#create the trivia questions import csv from unicodedata import category with open('D:/UX/01_Python_course/20220323_trivia_thor/preguntas_trivia.csv') as csv_file: csv_read = csv.reader(csv_file, delimiter= ',') trivia_list = list(csv_read) marathon_list = [] def list_clean(list, new_list): for item in range(0, len(list)): list_to_work = trivia_list[item] check = 0 for i in range(0, len(list_to_work)): if list_to_work[i] != "": check += 1 else: continue if check != 0: new_list.append(list[item]) list_clean(trivia_list, marathon_list) #print(marathon_list) #Here lives the right answer generator import csv from unicodedata import category with open('D:/UX/01_Python_course/20220323_trivia_thor/preguntas_trivia.csv') as csv_file: csv_read = csv.reader(csv_file, delimiter= ',') trivia_list = list(csv_read) correct_answers = dict() for item in range(1, len(trivia_list)): correct_answers[str(trivia_list[item][0])] = str(trivia_list[item][-1]) #create a file that uses a class class Scout: def __init__(self, name, age, achievements): self.name = name self.age = age self.achievements = achievements self.game_score = 0 def __repr__(self) -> str: return "{name} es un caminante de Thor, tiene {age} años y su progresión actual es {achievement}".format(name = self.name, age = self.age, achievement = self.achievements) def update_score(self, attained_score): self.game_score = attained_score print('Muy bien {name_player}, tu puntaje de {score} se añadirá, gracias por participar!'.format(name_player = self.name, score = self.game_score)) #welcome print("Bienvenido a la trivia de Thor, hoy conoceremos tu avance y nos dirás qué te parece el juego.\ Ingresa tu nombre, quedará en minúsculas para efectos prácticos!") nombre = input() print("Hola " + nombre.lower()) #request age edad = "" status = False print('ingresa tu edad en números!') while status == False: ingresar_edad = input() try: if type(int(ingresar_edad)) == int: status = True except: print("Tratemos de nuevo") finally: continue print("Tu edad es " + str(ingresar_edad) + " años") edad = ingresar_edad print("De acuerdo, cuál es tu última progresión?") achievements = {"a" : "Busqueda", "b": "encuentro", "c" : "desafio", "d" : "IDO"} for key, value in achievements.items(): print(key + " " + value) #puede irse_ print(str(achievements.items()) + " \elige por favor una letra") print("elige por favor una letra") achievement = input() if achievement in achievements.keys(): achievements[achievement] else : print("intentemos de nuevo") achievement = input() achievement = achievements[achievement] player = Scout(nombre, edad, achievement) print(player) #Aqui comienza el juego en forma print("De acuerdo, comencemos") #Pose the question and match the right answer initial_score = 0 def marathon(beginning_score): player_score = 0 answer_options = ["a", "b", "c", "d"] question_count = 1 for question in range(1,len(trivia_list)): print(trivia_list[question_count][0]) def option_array(): option_count = 1 incise_count = 0 for option in range(len(answer_options)): print(answer_options[incise_count] + "): " + trivia_list[question][option_count]) option_count += 1 incise_count += 1 option_array() answer = input() if answer in answer_options == False: print("debe ser una de estas resputestas:") option_array() else: if answer.upper() == correct_answers[str(trivia_list[question_count][0])]: player_score += 1 print('Muy bien, tu puntaje ahora es ' + str(player_score)) else: print("Suerte en la siguiente pregunta!") question_count += 1 print("Bien, tu puntaje final es " + str(player_score)) beginning_score = player_score return beginning_score marathon(initial_score) print(initial_score) print(player.update_score(initial_score))
Top comments (0)