delias
Апрель 19, 2009 20:37:28
учу пайтон по пособию на одном образовательном сайте.
так вот только начал но уже ничего не ясно.
1. в примерах на сайте print печатается через кавычки, а в 3м пайтоне print работает через скобки. это что, из-за разных версий так? пособие для более старой версии пайтона?
2. есть пример:
if a < 0:
s = -1
elif a == 0:
s = 0
else:
s = 1
так вот elif у меня не работает, нет такой функции. SyntaxError: invalid syntax и elif подсвечивает красным цветом.
буду благодарен если направите в нужное русло!
in.codee
Апрель 19, 2009 21:20:00
Да, в версии 3 print - функция. Используй 2ю ветку. Что за версия Python? В 2.5 точно есть :)
delias
Апрель 20, 2009 00:36:18
версия 3
во второй работает с кавычками.
а что с elif делать не подскажете?
Андрей Светлов
Апрель 20, 2009 01:16:58
На отступы посмотреть, например. Тут что-то совсем глупое. Все должно работать.
delias
Апрель 20, 2009 10:15:59
ладно, начну с самого простого.
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_о
hellslade
Апрель 20, 2009 10:34:34
deliasВы что-нибудь про отступы слышали? В питоне без них никак. Блоки кода (begin-end, фигурные скобки) в питоне обозначаются отступами
т.е.
if a>b:
c = a
else:
# anything
Dimka665
Апрель 20, 2009 11:02:50
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
delias
Апрель 20, 2009 12:06:06
спасибо большое, про отступы действительно упустил
tragic_audio
Март 10, 2014 12:09:53
Столкнулся с той же проблемой что и топикстартер и с отступами все в порядке было. Потом углядел что после выражения символ двоеточия забыл поставить)