2014-12-09 5 views
-4

ОК, у меня есть такой код:stupid Синтаксис Ошибка с условными обозначениями?

def main(): 
    while something == True: 
     dosomething() 
main() 

, но в другой части кода я сделать то же самое, и я не получаю ошибку если я изменить while для if Изменение погрешности вместо сказать

while something == True: 
    ^
SyntaxError: invalid syntax 

переводчик говорит:

if something == True: 
        ^
    SyntaxError: invalid syntax 

так, его же, но я получаю другой эр rors

Что происходит? это питон, издевающийся надо мной? PD: изменение def main() в def main():

+2

Конец вашей сигнатуру с «:». –

+0

@SyedMauzeRehan спасибо за ответ, но это ошибка, когда я пишу этот int SOF, но ошибка сохраняется – salajadin

+0

Является ли 'something' переменной в вашем коде, или вы используете ее как стенд для более сложного сравнения (что может иметь синтаксическая ошибка)? – tdelaney

ответ

1

Вы не нашли : в конце вашей def main() линии (должно быть def main():).

+0

Yup. Питон не «шутит». – kartikg3

+0

@MaxNoel благодарит, но ошибка сохраняется, и если ошибка была: в функции возвращается интерпретатор: def main() ^ Синтаксис: недействительный синтаксис – salajadin

0

Я думаю, что ваш, если и в то время как блок отсутствует заявление, попробуйте

while something == True: 
    pass 
+0

Нет, что бы поднять другую ошибку (ожидается отступом блока bla bla) –