2012-06-25 3 views
-2

Я смущен об ошибке, которую я получаю.Python «if» ошибка синтаксиса оператора

Мой код, как показано ниже:

result = getString(argument_x) 
print result # it returns "PASS" 
if result ="PASS" 

Когда я пытаюсь запустить его, он показывает ошибку на последней строке:

SyntaxError: invalid syntax 

ответ

4

Многие конструкции Python, как если бы, в то время, и, требуют согласующего двоеточия :, а следующие строки должны быть отступом на одном уровне.

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

В вашем случае, вы используете, если заявление:

result = getString(argument_x) 
print result # it returns "PASS" 
if result == "PASS": 
    print("Result equals pass") 
#Add any other statements here to be executed as a result 
#of result == "PASS" 
+0

Для тех, кто отметил этот ответ, если вы скажете, что вам не понравилось в моем ответе, я бы отредактировал и исправлю его. – octopusgrabbus

+1

Я предполагаю, что это может быть связано с тем, что ваш код по-прежнему вызывает «SyntaxError». Возможно, также потому, что вы смешиваете синтаксис Python 2 и Python 3 (хотя это и не является причиной ошибки). –

+0

Это было предназначено только для примера, поэтому я перейду к редактированию, чтобы не выдавать ошибку. Благодарю. – octopusgrabbus

8

Сравнение равенство выполняется с помощью == оператора (вы используете один =, который предназначен только для присвоений). Кроме того, вы пропустили двоеточие:

if result == "PASS": 
+0

OMG, как раз !! Спасибо, я много раз пробовал ... Так глупо. Спасибо, Тим. Помогает. – Nancy

+0

Тим указал на ошибку в коде, также убедитесь, что вы не используете ключевое слово 'is' для сравнения строк. Причина здесь: http://stackoverflow.com/questions/2987958/how-is-the-is-keyword-implemented-in-python – 18bytes

+0

Спасибо, Devsundar. Я обращу внимание на это. :-) Хорошего дня! – Nancy

1

Вам нужен colon в конце линии, таким образом if result == "PASS":

0

Вы пропустили оператор двоеточия после, если заявление.

result = getString(argument_x) 
print result # it returns "PASS" 
if result == "PASS": 
    print 'something' 
Смежные вопросы