🐍 Укус питона 🐍
Open in Telegram
🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки. 👽 Админ - @tg_adminisrator 🔊 Купить рекламу: https://telega.in/c/byteofpython 👉 Чат: @abyteofpython 👉 Поделиться с друзьями: @byteofpython
Show more2 334
Subscribers
No data24 hours
-117 days
-3730 days
Posts Archive
2 334
Игнорирование значений
Если какой-то элемент коллекции не нужен, то обычно для него определяется переменная с именем _ (прочерк), смотрим пример:
Здесь нам не важен второй элемент кортежа, поэтому для него определяем переменную _. Хотя в реальности _ - такое же действительное имя, как name и company, вторая часть кода:
🐍 Укус питона // 💬 Чат // #теория #распаковка #значения
2 334
Python Developer — канал каждого уважающего себя питониста
Тонкости и секреты языка Python, разбор вопросов и решение задач с собеседований в Google, Amazon и Microsoft.
👉🏻 Подписывайся и прокачивай свои навыки
2 334
Обновление данных
Для работы с бинарными файлами в Python может применяться модуль - shelve. Он сохраняет объекты в файл с определенным ключом. Давайте рассмотрим обновление данных для этого модуля.
Для изменения данных достаточно присвоить по ключу новое значение, а для добавления данных - определить новый ключ, смотрим код:
🐍 Укус питона // 💬 Чат // #теория #shelve #данные
2 334
Обращение к элементам кортежа
Обращение к элементам в кортеже происходит также, как и в списке, по индексу. Индексация начинается также с нуля при получении элементов с начала списка и с -1 при получении элементов с конца списка, первая часть кода:
Но так как кортеж - неизменяемый тип (immutable), то мы не сможем изменить его элементы. То есть следующая запись работать не будет, маленькая вторая часть:
При необходимости мы можем разложить кортеж на отдельные переменные, третья часть:
🐍 Укус питона // 💬 Чат // #теория #кортежи
2 334
Локальный контекст
В отличие от глобальных переменных локальная переменная определяется внутри функции и доступна только из этой функции, то есть имеет локальную область видимости, смотрим 👀:
В данном случае в каждой из двух функций определяется локальная переменная name. И хотя эти переменные называются одинаково, но тем не менее это две разных переменных, каждая из которых доступна только в рамках своей функции. Также в функции say_hi() определена переменная surname, которая также является локальной, поэтому в функции say_bye() мы ее использовать не сможем.
🐍 Укус питона // 💬 Чат // #теория #переменные #контекст #scope
2 334
Двоичное представление чисел
При двоичной системе каждый разряд числа может иметь только два значения - 0 и 1. Например, 0 в десятичной системе также будет равен 0 в двоичной системе, а 1 в десятичной системе будет соответствовать 1 в двоичной системе. Следующее число в десятичной системе - 2 в двоичной системе будет соответствовать 10. То есть, когда мы к 1 прибавляем 1, то результатом будет 10. И так далее.
Например, 5 в двоичном представлении 101 и имеет три разряда. Для вывода десятичного числа в двоичной системе можно применять спецификатор 0b, первая часть кода:
Без указания спецификатора функция print() выводит число в десятичной системе.
При этом Python позволяет сразу определять число в двоичной форме. Для этого число в двоичной форме указывается после префикса 0b, вторая часть кода:
🐍 Укус питона // 💬 Чат // #теория #числа
2 334
Вставка значений в строку
Python позволяет встравивать в строку значения других переменных. Для этого внутри строки переменные размещаются в фигурных скобках {}, а перед всей строкой ставится символ f, смотрим пример:
В данном случае на место {userName} будет вставляться значение переменной userName. Аналогично на вместо {userAge} будет вставляться значение переменной userAge.
🐍 Укус питона // 💬 Чат // #теория #данные #переменные
2 334
Операции сдвига
Операции сдвига также производятся над разрядами чисел. Сдвиг может происходить вправо и влево.
• x<<y - сдвигает число x влево на y разрядов. Например, 4<<1 сдвигает число 4 (которое в двоичном представлении 100) на один разряд влево, то есть в итоге получается 1000 или число 8 в десятичном представлении.
• x>>y - сдвигает число x вправо на y разрядов. Например, 16>>1 сдвигает число 16 (которое в двоичном представлении 10000) на один разряд вправо, то есть в итоге получается 1000 или число 8 в десятичном представлении.
Таким образом, если исходное число, которое надо сдвинуть в ту или другую строну, делится на два, то фактически получается умножение или деление на два. Поэтому подобную операцию можно использовать вместо непосредственного умножения или деления на два. Например, смотрим код:
🐍 Укус питона // 💬 Чат // #теория #операции #числа
