Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 18, 2018 17:40:43

Radion347
Зарегистрирован: 2018-12-18
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

NameError

Написал пару функций и захотел их проверить в консоли Python выдалась вот такая ошибка:
Traceback (most recent call last):
File “<input>”, line 1, in <module>
NameError: name ‘max3’ is not defined
Вот сами функции
def max2(x: int, y: int)
if x > y:
return x
else:
return y
def max3(x: int, y: int, z: int):
return max2(x, max2(y, z))

Отредактировано Radion347 (Дек. 18, 2018 17:41:43)

Офлайн

#2 Дек. 18, 2018 18:30:13

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

NameError

а что это в аргументах?

 (x: int, y: int, z: int)
 >>> def max2(x, y):
	if x > y:
		return x
	else:
		return y
	
>>> max2(15,25)
25
>>> def max3(x,y,z):
	return max2(x, max2(y, z))
>>> max3(15,25,45)
45
>>>
как видите нет ошибок, может буква а или х в имени на кириллице?

Отредактировано marvellik (Дек. 18, 2018 18:38:07)

Офлайн

#3 Дек. 18, 2018 18:37:12

Radion347
Зарегистрирован: 2018-12-18
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

NameError

marvellik
а что это в аргументах?

Ну это типа не обязательно, но можно прописать, чтобы от этого значения ожидался именно этот тип

Офлайн

#4 Дек. 18, 2018 18:39:41

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

NameError

Radion347
Ну это типа не обязательно, но можно прописать, чтобы от этого значения ожидался именно этот тип
в питоне так не делают, динамическая типизация однако. выше дописал ваш код и возможно причину ошибки

Офлайн

#5 Дек. 18, 2018 18:41:28

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

NameError

marvellik
в питоне так не делают, динамическая типизация однако. выше дописал ваш код и возможно причину ошибки
с версии 3.6 делают

Офлайн

#6 Дек. 18, 2018 18:43:18

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

NameError

 def max2(x: int, y: int):
    if x > y:
        return x
    else:
        return y
def max3(x: int, y: int, z: int):
    return max2(x, max2(y, z))
print(max3(1, 2, 3))

Офлайн

#7 Дек. 18, 2018 18:43:49

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

NameError

Romissevd
спасибо за инфу. первый раз такое вижу.

Офлайн

#8 Дек. 18, 2018 18:54:49

Radion347
Зарегистрирован: 2018-12-18
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

NameError

Romissevd
Дело в том, что эти функции работают, если просто запустить, но не работают в консоли Python
Может быть оно не работает на PyCharm? Может какую-нибудь другую прогамму?

Офлайн

#9 Дек. 18, 2018 21:41:46

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

NameError

Radion347
приведите код, в которм появляеться ваша ошибка.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#10 Дек. 19, 2018 15:32:05

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

NameError

marvellik
когда в будущем увидите оператор := тож сильно не удивляйтесь



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version