Исходя из того, что я могу понять, исходя из вашего вопроса и вашего исходного кода, вы хотите взять название песни и попросить пользователя найти правильного исполнителя для этого названия песни.Если это так, то вы можете значительно упростить свой код:
import random
def song():
score = 0
print("Wellcome The Song Game")
newfile = open("songs.txt","r")
sangg_2D = eval(newfile.read())
newfile.close()
randomSong = random.randint(0,len(sangg_2D)-1)
found = False
while not found:
sang2 = sangg_2D[randomSong][1]
print("The Song Name Is", sang2)
sangg3 = input("Name The Artist")
if sangg3 == sangg_2D[randomSong][0]:
score = score + 2
found = True
print("welldone You Got The Answer Correct On Your First Try")
break
else:
print("Wrong Answer Try Again")
song()
Сначала вы читаете содержимое файла, чтобы узнать всех исполнителей и их песни.Лучше использовать ast.literal_eval
из ast
модуля, чем eval
, кстати.Затем вы выбираете случайную песню из списка и предлагаете пользователю угадать правильного исполнителя.Если пользователь находит исполнителей, то ваша программа завершена, иначе он снова просит пользователя угадать исполнителя.Вам также необходимо исправить деталь с score
с первой попытки, потому что нет проверки, что пользователь нашел ее с первой попытки.