Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 19, 2009 20:37:28

delias
От:
Зарегистрирован: 2009-04-19
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

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

1. в примерах на сайте print печатается через кавычки, а в 3м пайтоне print работает через скобки. это что, из-за разных версий так? пособие для более старой версии пайтона?
2. есть пример:
if a < 0:
s = -1
elif a == 0:
s = 0
else:
s = 1

так вот elif у меня не работает, нет такой функции. SyntaxError: invalid syntax и elif подсвечивает красным цветом.

буду благодарен если направите в нужное русло!



Офлайн

#2 Апрель 19, 2009 21:20:00

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

Чайник и оператор elif

Да, в версии 3 print - функция. Используй 2ю ветку. Что за версия Python? В 2.5 точно есть :)



Офлайн

#3 Апрель 20, 2009 00:36:18

delias
От:
Зарегистрирован: 2009-04-19
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

версия 3

во второй работает с кавычками.

а что с elif делать не подскажете?



Офлайн

#4 Апрель 20, 2009 01:16:58

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Чайник и оператор elif

На отступы посмотреть, например. Тут что-то совсем глупое. Все должно работать.



Офлайн

#5 Апрель 20, 2009 10:15:59

delias
От:
Зарегистрирован: 2009-04-19
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

ладно, начну с самого простого.

IDLE 2.6.2
>>> a=1
>>> b=2
>>> c=b+a
>>> print c
3

>>> if a>b:
c=a
else:

SyntaxError: invalid syntax
>>> else
SyntaxError: invalid syntax
>>> else c=b
SyntaxError: invalid syntax
>>> else: c=b
SyntaxError: invalid syntax
>>> else c = b
SyntaxError: invalid syntax
>>>

что я делаю не так?! 0_о



Офлайн

#6 Апрель 20, 2009 10:34:34

hellslade
От:
Зарегистрирован: 2008-01-28
Сообщения: 240
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

delias
Вы что-нибудь про отступы слышали? В питоне без них никак. Блоки кода (begin-end, фигурные скобки) в питоне обозначаются отступами
т.е.

if a>b:
c = a
else:
# anything



Офлайн

#7 Апрель 20, 2009 11:02:50

Dimka665
От:
Зарегистрирован: 2008-09-19
Сообщения: 177
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

delias
ладно, начну с самого простого.

IDLE 2.6.2
>>> a=1
>>> b=2
>>> c=b+a
>>> print c
3

>>> if a>b:
c=a
else:

SyntaxError: invalid syntax
>>> else
SyntaxError: invalid syntax
>>> else c=b
SyntaxError: invalid syntax
>>> else: c=b
SyntaxError: invalid syntax
>>> else c = b
SyntaxError: invalid syntax
>>>

что я делаю не так?! 0_о
перед else отступ не нужен, после else: надо написать оператор
>>>if a > b:
c = a
else:
a = 9



Офлайн

#8 Апрель 20, 2009 12:06:06

delias
От:
Зарегистрирован: 2009-04-19
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

спасибо большое, про отступы действительно упустил



Офлайн

#9 Март 10, 2014 12:09:53

tragic_audio
Зарегистрирован: 2014-03-10
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Чайник и оператор elif

Столкнулся с той же проблемой что и топикстартер и с отступами все в порядке было. Потом углядел что после выражения символ двоеточия забыл поставить)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version