Синтаксис Ошибка при попытке определить несколько функций в Python? - PullRequest
1 голос
/ 04 августа 2011

Я пытаюсь выучить Python, поэтому я просто пишу несколько простых программ. Я написал эти два бита кода, чтобы определить две функции, которые я хочу использовать в программе, и они обе делают то, что хотят, но когда я пытаюсь вставить их в IDLE, он говорит, что во втором определении есть синтаксическая ошибка. Есть идеи, что это?

вот код:

def print_seq1(number):

    number = input("Pick a number: ")

    print " "
    while number != 1:
        if number%2==0:
            print number
            number = number/2
        else:
            print number
            number = number*3 + 1
    print number
    print " "
    choice = 0  

def print_seq2(number):

        number = input("Pick a number: ")
        print " "
        while number != 1:
            if number%2==0:
                print number,
                number = number/2
            else:
                print number,
                number = number*3 + 1
        print number
        print " "
        choice = 0

Ответы [ 2 ]

1 голос
/ 04 августа 2011

Интерактивные интерпретаторы (иначе говоря, REPL, просто «интерпретатор» и многие другие термины) обычно ожидают только одну инструкцию верхнего уровня (определение функции, определение класса, глобальное назначение, цикл, ...) в время. Вы даете это два, и это смущает. Попробуйте ввести в первую def пустую строку для подтверждения и фактического ввода данных, затем вторую def.

0 голосов
/ 04 августа 2011

Когда вы вставляете, вы путаете форматирование кода, либо заново корректируете отступ после вставки, либо вставляете функции отдельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...