Друзья, в это воскресенье делимся очередной подборкой it-мемов!
Свои мемы скидывайте в комментарии, будем смеяться вместе. 😂
#итмем
Свои мемы скидывайте в комментарии, будем смеяться вместе. 😂
#итмем
Друзья, сегодня мы обсудим, как в Python работают параметры функций со значением по умолчанию, если значение параметра вычисляется в момент определения функции. 😎
⭐️ Когда значение параметра по умолчанию вычисляется в момент определения функции, все вызовы функции будут возвращать одно и то же значение параметра по умолчанию, если при вызове не передано новое значение.
⭐️ Дело в том, что значения параметров по умолчанию создаются при определении функции один раз, а не при каждом ее вызове. Иными словами, функция запоминает то значение параметра по умолчанию, которое было получено на момент ее объявления. Параметр сохраняет это значение на протяжении всего времени существования функции.
⭐️ Все значения параметров по умолчанию помещаются в специальный атрибут функции
⭐️ В приведенном примере кода функция
⭐️ В цикле возвращаемое функцией значение помещается в множество. Так как множество может содержать только уникальные элементы, длина полученного множества равна 1.
‼️ ‼️ ‼️ ❗️ Чтобы избежать подобных проблем, значения параметров по умолчанию не должны вычисляться непосредственно в определении функции.
😈 Какие еще знаете плохие практики, связанные с параметрами функций со значением по умолчанию? Пишите в комментариях.
#python #полезныйматериал #функции
__defaults__
. Он представляет собой кортеж со значениями параметров по умолчанию или None
, если функция не имеет параметров по умолчанию.randint(1, 10)
вычисляет случайное число из переданного диапазона один раз в момент определения функции. Полученное значение записывается в атрибут __defaults__
и возвращается из функции при каждом следующем вызове. 😈 Какие еще знаете плохие практики, связанные с параметрами функций со значением по умолчанию? Пишите в комментариях.
#python #полезныйматериал #функции
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, мы принесли интересную задачу, которая скрасит вечер вашего понедельника. 😎
Пчелка-гик и Кемаль играют в игру под названием "Быки и коровы". 🐮 Правил мы не знаем, но можем понаблюдать за ходом игры.
Пчелка загадывает четырехзначное число, состоящее из различных цифр, а Кемаль его отгадывает. Каждый раз Кемаль предлагает свой вариант, а Пчелка делает подсказку: сообщает количество быков и коров. Кемаль продолжает называть варианты числа до тех пор, пока не угадает верное.
На картинке видно, что Пчелка загадала число 4176. Кемаль пытается его отгадать, называя свои варианты, а Пчелка дает ему подсказки. Ваша задача — написать количество быков и коров для числа 7146.
Ответы и решения пишите в комментариях, не забывая прятать их подскрытым текстом . 😈
⭐️ Задачу прислал наш подписчик Валентин Коршиков. 🫶
📌 Если у вас тоже есть классная задачка, отправляйте ее в наш телеграм-бот @pygen_ru_bot. 👌
#задача #задачаотподписчика
Пчелка-гик и Кемаль играют в игру под названием "Быки и коровы". 🐮 Правил мы не знаем, но можем понаблюдать за ходом игры.
Пчелка загадывает четырехзначное число, состоящее из различных цифр, а Кемаль его отгадывает. Каждый раз Кемаль предлагает свой вариант, а Пчелка делает подсказку: сообщает количество быков и коров. Кемаль продолжает называть варианты числа до тех пор, пока не угадает верное.
На картинке видно, что Пчелка загадала число 4176. Кемаль пытается его отгадать, называя свои варианты, а Пчелка дает ему подсказки. Ваша задача — написать количество быков и коров для числа 7146.
Ответы и решения пишите в комментариях, не забывая прятать их под
#задача #задачаотподписчика
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, давайте считать овечек быков и коров из вчерашней задачи. 🐮
⭐️ Быки — это цифры в предложенном Кемалем числе, которые совпадают по значению и стоят на том же месте, что и в числе, которое загадала Пчелка-гик.
⭐️ Коровы — это цифры, которые совпадают по значению, но находятся в неверной позиции относительно загаданного числа.
Таким образом, в числе 7146 по отношению к числу 4176 будет 2 быка и 2 коровы. 😎
Подробнее прочитать про игру "Быки и коровы" можно по ссылке.
Ставьте ❤️, если задача понравилась.
#разборзадачи
Таким образом, в числе 7146 по отношению к числу 4176 будет 2 быка и 2 коровы. 😎
Подробнее прочитать про игру "Быки и коровы" можно по ссылке.
Ставьте ❤️, если задача понравилась.
#разборзадачи
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, не так давно мы обещали вам рассказать о предстоящем курсе по алгоритмам. Рассказываем. 😎
Курс "Поколение Python": алгоритмы и структуры данных для начинающих будет полезен как начинающим, так и продвинутым. Мы собрали кучу задач из разных источников, которые позволяют на высоком уровне раскрыть изучаемую тему.
Примерный список модулей:
1. Введение в функции и логарифмы
2. Понятие и анализ алгоритмов
3. Алгоритмы поиска
4. Алгоритмы простых сортировок
5. Методы оптимизации решения задач
6. Системы счисления
7. Задачи на обработку матриц🐌
8. Математические алгоритмы
9. Структуры данных
10. Алгоритмические mock-собеседования
⭐️ Курс получается очень большим: уже сейчас в нем больше семисот задач на программирование, а по итогу их количество скорее всего перевалит за тысячу. 😎 Готовьтесь!
⭐️ Курс сложный и интересный: в нем есть алгоритмика, математика, логика и многое другое.
📌 Точных сроков релиза пока нет, но курс должен выйти в этом году. Вы можете оставить заявку на нашем сайте, чтобы первым узнать о старте курса.
Тема алгоритмов и структур данных очень объемная, поэтому мы собираемся также делать курс по алгоритмам для продвинутых.
Ставь ❤️, если ждешь курс по алгоритмам и планируешь его проходить.
#поколениеpython #алгоритмы #структурыданных #dsa
Курс "Поколение Python": алгоритмы и структуры данных для начинающих будет полезен как начинающим, так и продвинутым. Мы собрали кучу задач из разных источников, которые позволяют на высоком уровне раскрыть изучаемую тему.
Примерный список модулей:
1. Введение в функции и логарифмы
2. Понятие и анализ алгоритмов
3. Алгоритмы поиска
4. Алгоритмы простых сортировок
5. Методы оптимизации решения задач
6. Системы счисления
7. Задачи на обработку матриц
8. Математические алгоритмы
9. Структуры данных
10. Алгоритмические mock-собеседования
Ставь ❤️, если ждешь курс по алгоритмам и планируешь его проходить.
#поколениеpython #алгоритмы #структурыданных #dsa
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, сегодняшний пост посвящен видам типизации в языках программирования.
⭐️ Типизация — это способность языка распознавать типы данных.
Языки программирования бывают нетипизированными и типизированными. Нетипизированные языки не различают никаких типов данных, а типизированные языки различают разные типы данных. Типизированные языки делятся на категории по видам типизации.
Рассмотрим подробно различные виды типизации.
1️⃣ Статическая и динамическая типизация
Статическая типизация означает, что типы переменных определяются на этапе компиляции программы. Динамическая типизация означает, что типы переменных определяются во время выполнения программы.
Языки со статической типизацией: С, Java.
Языки с динамической типизацией: Python, Ruby.
2️⃣ Сильная (строгая) и слабая (нестрогая) типизация
Сильная типизация не позволяет смешивать различные типы и не выполняет автоматические неявные преобразования типов. Слабая типизация допускает смешивание и автоматические неявные преобразования типов.
Языки с сильной типизацией: Python, Java.
Языки со слабой типизацией: JavaScript, PHP.
3️⃣ Явная и неявная типизация
Языкам с явной типизацией нужно точно задавать тип переменных. В языках с неявной типизацией это делать необязательно, так как за определение типов отвечает компилятор или интерпретатор.
Языки с явной типизацией: C++, C#.
Языки с неявной типизацией: Python, PHP.
📌 Python обладает динамической сильной неявной типизацией.
#полезныйматериал #python
Языки программирования бывают нетипизированными и типизированными. Нетипизированные языки не различают никаких типов данных, а типизированные языки различают разные типы данных. Типизированные языки делятся на категории по видам типизации.
Рассмотрим подробно различные виды типизации.
Статическая типизация означает, что типы переменных определяются на этапе компиляции программы. Динамическая типизация означает, что типы переменных определяются во время выполнения программы.
Языки со статической типизацией: С, Java.
Языки с динамической типизацией: Python, Ruby.
Сильная типизация не позволяет смешивать различные типы и не выполняет автоматические неявные преобразования типов. Слабая типизация допускает смешивание и автоматические неявные преобразования типов.
Языки с сильной типизацией: Python, Java.
Языки со слабой типизацией: JavaScript, PHP.
Языкам с явной типизацией нужно точно задавать тип переменных. В языках с неявной типизацией это делать необязательно, так как за определение типов отвечает компилятор или интерпретатор.
Языки с явной типизацией: C++, C#.
Языки с неявной типизацией: Python, PHP.
#полезныйматериал #python
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, мы решили в конце месяца публиковать подборку постов и задач нашего канала. Надеемся, это поможет вам вернуться к интересным темам, которые вы могли пропустить. 😎
🧩 ЗАДАЧИ НА ЛОГИКУ И МАТЕМАТИКУ
Про котиков и дроби
Про котиков и программистов
Про числа, быков и коров
Про сумму дробей без приведения к общему знаменателю
Про мост, фонарик и четырех программистов
👨💻 ЗАДАЧИ НА КОД
Первая и вторая
🛠 ПОЛЕЗНЫЕ МАТЕРИАЛЫ
Про кириллицу в названиях переменных в Python
Малоизвестные методы типов int и float
Про параметры функций со значением по умолчанию
Частые ошибки начинающих программистов
Mock-cобеседование с Григорием
🧠 ПОЗНАВАТЕЛЬНЫЕ ПОСТЫ
Про язык программирования Go
Про язык программирования Rust
Про ошибку переполнения переменной стоимостью 500 млн долларов
🤑 ДЕЙСТВУЮЩИЕ АКЦИИ
Мерч + курсы = выгода
#дайджест #поколениеpython
🧩 ЗАДАЧИ НА ЛОГИКУ И МАТЕМАТИКУ
Про котиков и дроби
Про котиков и программистов
Про числа, быков и коров
Про сумму дробей без приведения к общему знаменателю
Про мост, фонарик и четырех программистов
Первая и вторая
🛠 ПОЛЕЗНЫЕ МАТЕРИАЛЫ
Про кириллицу в названиях переменных в Python
Малоизвестные методы типов int и float
Про параметры функций со значением по умолчанию
Частые ошибки начинающих программистов
Mock-cобеседование с Григорием
🧠 ПОЗНАВАТЕЛЬНЫЕ ПОСТЫ
Про язык программирования Go
Про язык программирования Rust
Про ошибку переполнения переменной стоимостью 500 млн долларов
Мерч + курсы = выгода
#дайджест #поколениеpython
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, а знали ли вы, что в Python можно использовать точку с запятой (
🖥 Во многих языках программирования (Java, C++, C# и других) символ
🖥 В Python для указания конца инструкции вместо
😎 Тем не менее, символ
😅 Примечательно, что хоть символ
Приведенный ниже код:
выводит
А вы используете символ
#python #полезныйматериал
;
) для объединения инструкций в одной строке кода? 🤓 ;
используется для завершения инструкций и является обязательным, поскольку показывает интерпретатору или компилятору, где заканчивается одна инструкция и начинается другая.;
используется перенос на новую строку. Это позволяет сделать код более читаемым и избежать использования лишних символов.😎 Тем не менее, символ
;
может использоваться и в Python. С его помощью можно объединить в одну строку несколько инструкций, не требующих блока кода. Однако в большинстве случаев использовать такую запись не рекомендуется, поскольку она ухудшает читаемость кода и усложняет его понимание.😅 Примечательно, что хоть символ
;
и не применяется в Python для указания конца инструкций, его использование не вызывает ошибки.Приведенный ниже код:
x = 2;
y = 3;
result = x + y;
print(result);
выводит
5
.А вы используете символ
;
в вашем коде? Пишите в комментариях! 🤠#python #полезныйматериал
Please open Telegram to view this post
VIEW IN TELEGRAM
Друзья, хорошая новость: сегодня записываем интервью с сотрудником Google Женей! 😎
А пока предлагаем решить задачку, которую задавали на собеседованиях в Google.
Задача. Почему канализационные люки круглые? 🔘
Пишите свои версии в комментариях. Как считаете, нужны ли такие задания на собеседованиях на должность разработчика, и если да, то зачем? 💡
#задача #google
А пока предлагаем решить задачку, которую задавали на собеседованиях в Google.
Задача. Почему канализационные люки круглые? 🔘
Пишите свои версии в комментариях. Как считаете, нужны ли такие задания на собеседованиях на должность разработчика, и если да, то зачем? 💡
#задача #google