почему у меня неверный синтаксис в четвертой строке? - PullRequest
0 голосов
/ 05 августа 2020
def min (x,y):
    if x < y:
        return x
    else
         return y

min(7,5)
print min(7,5)

Я пытаюсь использовать функцию min для практики. Функция должна возвращать наименьшее число из двух чисел, указанных выше. И я получаю синтаксическую ошибку в четвертой строке, когда написано else. Может кто-нибудь объяснить, почему?

Ответы [ 2 ]

1 голос
/ 05 августа 2020

Другим будет немного сложно понять ваш код, если вы не отформатируете должным образом, чтобы мы могли видеть каждую строку там, где она должна быть, однако я предполагаю, что это примерно так, с «:», которое вы забыли:

def min (x,y):
    if x < y:
        return x 
    else:
        return y

И то, что вы хотите отобразить, будет:

print(min(7,5))

Итак, вам не хватало скобки, которая, в отличие от Python 2, необходима в Python 3.

В любом случае вы можете захотеть изучить другие возможные результаты при сравнении чисел. Простой пример:

def min (x,y):
    if x < y:
        return x 
    elif x > y:
        return y
    elif x == y:
        return "both are equal"
1 голос
/ 05 августа 2020

Вы забыли : в четвертой строке. Ваш правильный код будет:

def min (x,y):
    if x < y:
        return x
    else:
         return y

min(7,5)
print min(7, 5)

В Python3 .x в последней строке вы должны написать

print(min(7, 5))

На самом деле вам также не нужно повторно объявлять min() функция. Он уже встроен в python. Просто напишите:

min(7,5)
...