В любом языке программирования есть свои фишечки, о которых мало кто знает, но которые делают этот язык особенным. Да, многие фишечки заимствованы из других языков. Но это и неплохо. И сегодня хочу рассказать об одной такой фишке языка Python. Нельзя сказать, что без неё не прожить. С другой стороны, чем больше возможностей, тем лучше.
Итак, в Python есть глобальная переменная со странным именем _. Да, это всего лишь символ подчёркивания. Поэтому написать это имя - проще простого. Это не требует много времени. А основной замысел Python, как вы знаете - это наименьшие затраты времени на разработку.
Эта переменная хранит последний вывод на экран. И её можно использовать в любом месте программы. Зачем это надо?
Ну представьте, что у вас настоящая большая программа, в которой имена переменных могут быть довольно длинными. Допустим, есть такая переменная:
MyVariableWithALongName = 100
Мы что-то делаем с этой переменной, например:
MyVariableWithALongName = 100
MyVariableWithALongName # Здесь выводим на экран
100
# Теперь в переменной _ значение 100
# и его можно использовать:
x = _ + 50
x
150
Как видите, если бы такой возможности в языке не было, то нам бы пришлось написать:
x = MyVariableWithALongName + 50
Это дало бы точно такой же результат, вот только букв надо было бы написать намного больше. А это время - самое дорогое, что у нас есть.
Вот так примерно это выглядит в IDLE:
Так что берите на вооружение. Но помните - если вы используете переменную _ в выражениях, то тип данных, который в ней хранится, должен совпадать с основным типом данных выражения. То есть вот такой код будет ошибочным (если перед этим был код, описанный выше):
str = "Привет"
str = str + "!!!"
str = str + _ # Так нельзя!!!
И, соответственно, при попытке скрестить ежа с колючей проволокой вы получите сообщение об ошибке:
Но если сначала вывести переменную str на экран, то в переменной _ будет уже строковый тип. И тогда её можно будет использовать в строковых выражениях:
На этом пока всё. Подписывайтесь на канал, чтобы ничего не пропустить.