Почему в Python нет операций инкремента / декремента X++, --X?
Anonymous Quiz
27%
Они есть
47%
Потому что числа — неизменяемый тип данных
18%
Потому что в таком случае интерпретатор «запутается»
9%
Потому что это сделает Python неотличимым от C
Какой из способов изменить L быстрее?
Anonymous Quiz
14%
1
53%
2
33%
Одинаково быстры вне зависимости от размеров L
Что выведет код?
Anonymous Quiz
38%
['s', 'p', 'a', 'm', 's', 'p', 'a', 'm']
29%
['s', 'p', 'a', 'm', 'spam']
2%
['s', 'p', 'a', 'm']
31%
Error
Немного про именование
Синтаксис: (символ подчеркивания или алфавитный символ) + (любое число символов, цифр или символов подчеркивания)
Имена переменных должны начинаться с символа подчеркивания или с алфавитного символа, за которым может следовать произвольное число алфавитных символов, цифр или символов подчеркивания. Допустимыми именами являются:
Запрещено использовать зарезервированные слова
Имена определяемых вами переменных не могут совпадать с зарезервированными словами, имеющими в языке Python специальное назначение. Например, если попытаться использовать переменную с именем class, интерпретатор выведет сообщение о синтаксической ошибке, однако имена
Синтаксис: (символ подчеркивания или алфавитный символ) + (любое число символов, цифр или символов подчеркивания)
Имена переменных должны начинаться с символа подчеркивания или с алфавитного символа, за которым может следовать произвольное число алфавитных символов, цифр или символов подчеркивания. Допустимыми именами являются:
_spam
, Spam_1
, а 1_Spam
, spam$ и @#! – недопустимыми.Запрещено использовать зарезервированные слова
Имена определяемых вами переменных не могут совпадать с зарезервированными словами, имеющими в языке Python специальное назначение. Например, если попытаться использовать переменную с именем class, интерпретатор выведет сообщение о синтаксической ошибке, однако имена
klass
и Class
являются вполне допустимыми. В таблице перечислены слова, которые в настоящее время зарезервированы языком Python (и, следовательно, запрещены для использования в качестве имен переменных).Cуществует еще целый ряд соглашений – правил, которые не являются обязательными, но которым обычно следуют на практике. Например, имена с двумя символами подчеркивания в начале и в конце ( name) обычно имеют особый смысл для интерпретатора, поэтому вам следует избегать их использования для именования своих переменных.
Ниже приводится список соглашений, которым было бы желательно следовать:
— Имена, начинающиеся с одного символа подчеркивания (
— Имена, имеющие два символа подчеркивания в начале и в конце (
— Имена, начинающиеся с двух символов подчеркивания и не оканчивающиеся двумя символами подчеркивания (
— Имя, состоящее из единственного символа подчеркивания (
Ниже приводится список соглашений, которым было бы желательно следовать:
— Имена, начинающиеся с одного символа подчеркивания (
_X
), не импортируются инструкцией from module import *— Имена, имеющие два символа подчеркивания в начале и в конце (
__X__
) являются системными именами, которые имеют особый смысл для интерпретатора.— Имена, начинающиеся с двух символов подчеркивания и не оканчивающиеся двумя символами подчеркивания (
__X
), являются локальными («искаженными») для объемлющего класса (смотрите псевдочастные атрибуты).— Имя, состоящее из единственного символа подчеркивания (
_
), хранит результат последнего выражения при работе в интерактивной оболочке.Инструкции выражений
В языке Python выражения также могут использоваться в качестве инструкций (то есть в отдельной строке). Однако, поскольку результат вычисления таких выражений не сохраняется, использовать такую возможность имеет смысл только в том случае, если выражение выполняет какие-то полезные действия в виде побочного эффекта.
В качестве инструкций выражения используются обычно в двух ситуациях:
— Для вызова функций и методов: некоторые функции и методы выполняют огромный объем работы, не возвращая никакого значения. В других языках программирования такие функции иногда называют процедурами. Поскольку они не возвращают значений, которые могло бы потребоваться сохранить, вы можете вызывать эти функции в инструкциях выражений.
— Для вывода значений в интерактивной оболочке: в ходе интерактивного сеанса интерпретатор автоматически выводит результаты вводимых выражений. С технической точки зрения они также являются инструкциями выражений и играют роль сокращенной версии инструкции print.
Теперь вернемся к нашей задаче. Даже при том, что функция
В языке Python выражения также могут использоваться в качестве инструкций (то есть в отдельной строке). Однако, поскольку результат вычисления таких выражений не сохраняется, использовать такую возможность имеет смысл только в том случае, если выражение выполняет какие-то полезные действия в виде побочного эффекта.
# Простое вычисление
result = 5 + 3
# Инструкция выражения (выражение, которое вычисляется, но его результат не сохраняется)
5 * 2
# Использование функции print для вывода результата
print(5 * 2) # Это уже не просто инструкция выражения, а полноценная инструкция
В качестве инструкций выражения используются обычно в двух ситуациях:
— Для вызова функций и методов: некоторые функции и методы выполняют огромный объем работы, не возвращая никакого значения. В других языках программирования такие функции иногда называют процедурами. Поскольку они не возвращают значений, которые могло бы потребоваться сохранить, вы можете вызывать эти функции в инструкциях выражений.
— Для вывода значений в интерактивной оболочке: в ходе интерактивного сеанса интерпретатор автоматически выводит результаты вводимых выражений. С технической точки зрения они также являются инструкциями выражений и играют роль сокращенной версии инструкции print.
Теперь вернемся к нашей задаче. Даже при том, что функция
print
вызывается в отдельной строке, как инструкция выражения, тем не менее она возвращает значение, как и любая другая функция (она возвращает значение None, что возвращается всеми функциями, которые явно не возвращают какого-либо значимого значения):>>> x = print(‘spam’) # print – это выражение вызова функции
spam
>>> print(x) # но может использоваться, как инструкция выражения
None
👍1
В Python числа считаются истинными значениями, то есть в определенных обстоятельствах их можно использовать как эквивалент
В случае с оператором
Как только найден первый удовлетворяющий условию операнд, наступает «укороченная оценка», то есть определение результата выражения прекращается, как только результат становится известным.
True
.В случае с оператором
or
будет возвращен левый операнд, если он истинный. В противном случае возвращается правый операнд. Как только найден первый удовлетворяющий условию операнд, наступает «укороченная оценка», то есть определение результата выражения прекращается, как только результат становится известным.
В версиях Python 3.X вместо любого выражения допускается использовать многоточие ... (буквально, три точки, следующие друг за другом). Многоточие само по себе не выполняет никаких действий, поэтому его можно использовать как альтернативу инструкции pass, в частности вместо программного кода, который будет написан позднее, – своего рода примечание «TBD» (To Be Done – подлежит реализации).
Будет ли выведена надпись "Цикл завершен"?
Anonymous Quiz
38%
Да
49%
Нет
13%
Этот код вызовет ошибку