2015-07-06 1 views
1

У меня есть скрипт python, и я получаю следующую ошибку. Я являюсь новым учеником на этом языке, поэтому я создал простой скрипт под названием writing.py, чтобы записать имена участников и оценки в текстовый файл с именем scores.txt. Но я получаю эту ошибку:Python NameError: имя не определено для моего скрипта

Traceback (most recent call last): 
    File "writing.py", line 4, in <module> 
    participant = input("Participant name > ") 
    File "<string>", line 1, in <module> 
NameError: name 'Helen' is not defined 

Вот мой код:

f = open("scores.txt", "w") 

    while True: 
     participant = input("Participant name > ") 

     if participant == "quit": 
      print("Quitting...") 
      break 

    score = input("Score for " + participant + "> ") 
    f.write(participant + "," + score + "\n") 

f.close() 
+0

Название Helen - это только пользовательский ввод. Это относится к любому имени участника, которое я добавляю. – merit2go

ответ

3

Я предполагаю, что вы используете Python 2.x в Python 2.x, input на самом деле пытается оценить вклад перед возвратом результата, поэтому, если вы положили в какой-то имя, он будет относиться, что в качестве переменной и попытаться получить его значение, вызывающее проблему.

Использование raw_input(). вместо. Пример:

participant = raw_input("Participant name > ") 
.... 
score = raw_input("Score for " + participant + "> ") 
+0

Спасибо! Это сработало! – merit2go

+0

Мы были бы признательны, если бы вы приняли ответ, нажав на отметку слева от ответа, это было бы полезно для сообщества. –

1

Вы с помощью Python 2. В Python 2, input принимает ввод и пытается оценить его. Вы хотите использовать raw_input.

+0

Спасибо, что сработало! – merit2go

Смежные вопросы