Изучаем Python -> Переменные

Привет-привет, DTF!
В этом лонге, я продолжаю цикл статей, которые помогут Вам в изучении Python. Всё с примерами и наглядно. Читай, узнавай, подписывайся! А любители видео-формата, могут посмотреть мое видео по этой статье на YouTube-канале.

План статей:

  • print() /input()
  • Типы данных
  • Переменные
  • Условия
  • Массив
  • Циклы
  • Импорт библиотек
  • Функции
  • Классы
  • Закрепляем материал

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

Весь код я предлагаю писать в Google Colab, для этого нам понадобиться там зарегистрироваться (подойдет учетка Google) и создать новый блокнот (Файл -> Создать блокнот).

Также, если у Вас возникли трудности, можете просмотреть мой блокнот, в нём изложен весь сегодняшний материал.

Переменные

Классический пример. Этот пример зарекомендовал себя в моей практике. Я люблю его приводить, когда речь идёт о переменных.

Предположим, Вы идёте по людному месту и встречаете много людей на своем пути. Почему Вы не спрашиваете, как их зовут? Потому что Вам это не нужно. Эта информация никак не будет Вами в дальнейшем использована. Вы, видите этого человека в первый и последний раз.

Но при этом, Вы, наизусть знаете имена всех своих школьных друзей, однокурсников и коллег. Опять же, почему? Потому что в разные периоды жизни, Вам часто приходилось с ними взаимодействовать.

По этому принципу в программировании были созданы переменные. Для той информации, с которой приходится часто взаимодействовать, было бы неплохо её запомнить и как-нибудь образом обозвать, словом близким ей по смыслу.

Ну, например, попробуем сохранить своё имя и вывести его. Переменная записывается следующим образом, мы пишем название переменной, которое отражает, что будет лежать внутри переменной, ставим знак равно и записываем информацию, которую собираемся хранить. Теперь мы можем обращаться к этой переменной и получать таким образом доступ к информации, которая в ней лежит.

my_name = 'Pavel' print(my_name)
Получаем, в результате, вывод своего имени на экран.
Получаем, в результате, вывод своего имени на экран.

Пока что не ясно до конца, зачем использовать эти переменные. Почему бы не написать просто print('Pavel')? Давайте разберём это на отдельном примере.

Предположим, Вы работаете в NASA, кстати, где крайне активно используется Python. Вы запускаете дорогостоящие корабли в космос, иногда на них даже летают люди. Ошибка в Ваших расчётах имеет очень высокую цену.

Допустим, утром, Вам приходит задание рассчитать какое-то значение. Вы используете 200 различных формул и всё-таки приходите к ответу. Довольный, Вы уходите на обед. Вдруг, Вас, срочно тревожит коллега, с вестью о том, что одно из чисел, которое он дал Вам, накануне вечером, которое было использовано в этих формулах 200 раз - было с ошибкой, и его нужно исправить. Ваша реакция на это будет зависит от того способа, каким был написан код.

Если это число хранилось где-то в переменной, то Вам, нужно сделать лишь одну маленькую правку, внутри переменной и весь код будет работать с учётом внесенных изменений.

Если же Вы использовали это число напрямую, просто подставляя его во все формулы, то Вам предстоит 200 раз его найти, исправить, а затем еще и перепроверить себя. Используйте переменные, сохраняйте свои нервы, поражайте коллег своим спокойствием.

Другой пример, наглядно показывающий преимущество переменных можно отследить в данной записи.

print(20*30)
a = 20 b = 30 s = a*b print(s)
length = 20 width = 30 square = length * width print(square)

Выполните каждый из них и Вы получите трижды одинаковый результат.

Первый вариант кода
Первый вариант кода
Второй вариант кода
Второй вариант кода
Третий вариант кода
Третий вариант кода

Опять же, можно сказать, что самый оптимальный способом - первый, поскольку для него потребовалось меньше всего кода. Но поставьте себя на место нового сотрудника.

Вот, Вы, приходите на новое рабочее место, получаете задание, поменять расчёт площади в коде. Вы начинаете изучать код, написанный кем-либо из программистов прежде. Догадались бы ли Вы, что среди тысяч строк кода, за площадь отвечает print(20*30)? Думаю, в этом Вам бы помог только тот, кто этот код писал (если он еще работает в этой компании).

Второй пример уже лучше, мы видим здесь какую-то формулу расчета, можем понять, что это наш случай, если покопаемся в документации к коду (если она написана), но эта запись всё равно не эффективна, для того чтобы понять, что в ней происходит, нужно потратить какое-то время.

Третья запись, подробно расписана, на неё программист потратил, аж, на 30 секунд больше, своего драгоценного времени. Но именно она позволит нам достигнуть желаемого результата за пару минут, а не несколько часов (или даже дней). Мы видим в ней название величин и подробную запись того, как произведён расчёт.

Старайтесь делать код более читаемым, это упростит поиск ошибок для Вас и Ваших коллег.

Закрепляем знания

Итак, за эти три статьи мы разобрались с командами print()/input(), типами данных и переменными. Пришло время для закрепления полученных знаний.

Давайте, попробуем написать программу, которая спрашивает у пользователя его имя и возраст, а затем выводит на экран сообщение с этим. Постарайтесь, использовать весь полученный в статьях материал. А при возникновении вопросов - не стесняйтесь обращаться в комментарии. Отвечу на каждый :^)

Также, буду признателен подписке (особенно на YouTube канал), до встречи в новых постах!

29
3 комментария

Спасибо за материал, сам недавно начал изучать Python. Хоть я уже эти темы прошёл, но узнал из твоих уроков, что можно строку умножать в принте и она несколько раз выведется)) Мелочь, но приятно узнать что-то новое.

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

А есть где-то инфа, какой минимальный материал по Python (и возможно, ещё к нему что-то дополнительно) надо изучить, чтобы претендовать хоть на какую-то работу с минимальной зарплатой, да хоть за еду, но чтобы взяли?

Потому-что я сейчас пытаюсь сменить профессию, ухватился за Python пишу прогу, которая мне очень сильно бы помогла на прошлой работе (практиковаться как-то надо) - анализатор log-ов сетевого оборудования. Ну и всякое по мелочи написал: LAN-калькулятор, перевод грузинского текста, написанного на латинице и п.р. Но если честно не знаю в каком направлении надо двигаться, нет плана что и в какой последовательности изучать.

Ответить

Добрый вечер! Ваш комментарий вдохновил меня на написание статьи, персонально для Вас :) Можете почитать у меня в блоге.

1
Ответить

Ненавижу реализацию ООП в пайтоне.

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

Ответить