Хотите научиться собирать информацию из интернета, анализировать данные и автоматизировать рутину с помощью Python? Присоединяйтесь к бесплатному интенсиву с 1 по 3 июня в 19:00 по московскому времени. За 3 дня вы на практике познакомитесь с различными сферами применения языка Python, узнаете, какие навыки сейчас востребованы на фрилансе, и поймёте, как начать работать на удалёнке: ▶️ https://goo.su/N6BiJ
На интенсиве вы:
📍Попробуете свои силы в решении реальных задач из разных сфер на Python.
📍Познакомитесь с популярными библиотеками Python для парсинга и анализа данных.
📍Получите понятный ответ на вопрос о том, что нужно для работы Python-разработчиком на фрилансе.
Спикером выступит руководитель направления по исследованию данных в Сбере Анастасия Борнева. Она с 2018 года занимается автоматизацией процессов с помощью искусственного интеллекта.
🎁 Всем участникам, прошедшим интенсив, подарим электронную книгу Роджера Сайпа и Робба Збиерски «Разум под контролем» издательства МИФ. А каждый, кто оставит заявку на участие в интенсиве, получит материал с подборкой коротких и полезных программ на Python.
Подключайтесь, задавайте вопросы и получите сертификат на скидку 10 000 рублей на любой курс Skillbox
На интенсиве вы:
📍Попробуете свои силы в решении реальных задач из разных сфер на Python.
📍Познакомитесь с популярными библиотеками Python для парсинга и анализа данных.
📍Получите понятный ответ на вопрос о том, что нужно для работы Python-разработчиком на фрилансе.
Спикером выступит руководитель направления по исследованию данных в Сбере Анастасия Борнева. Она с 2018 года занимается автоматизацией процессов с помощью искусственного интеллекта.
🎁 Всем участникам, прошедшим интенсив, подарим электронную книгу Роджера Сайпа и Робба Збиерски «Разум под контролем» издательства МИФ. А каждый, кто оставит заявку на участие в интенсиве, получит материал с подборкой коротких и полезных программ на Python.
Подключайтесь, задавайте вопросы и получите сертификат на скидку 10 000 рублей на любой курс Skillbox
Утечки переменных цикла (ч.3)
Понимание списков больше не поддерживает синтаксическую форму [... for var in item1, item2, ...]. Используйте [... for var in (item1, item2, ...)] вместо этого. Также обратите внимание, что понимание списков имеет другую семантику: они ближе к синтаксическому сахару для выражения генератора внутри list() конструктора, и, в частности, управляющие переменные цикла больше не передаются в окружающую область видимости.
Понимание списков больше не поддерживает синтаксическую форму [... for var in item1, item2, ...]. Используйте [... for var in (item1, item2, ...)] вместо этого. Также обратите внимание, что понимание списков имеет другую семантику: они ближе к синтаксическому сахару для выражения генератора внутри list() конструктора, и, в частности, управляющие переменные цикла больше не передаются в окружающую область видимости.
Остерегайтесь изменяемых аргументов по умолчанию (ч.1)
Изменяемые аргументы функций по умолчанию в Python на самом деле не инициализируются при каждом вызове функции. Вместо этого в качестве значения по умолчанию используется недавно присвоенное им значение. Когда мы явно передали [] в some_func качестве аргумента значение default_arg переменной по умолчанию не использовалось, поэтому функция вернулась, как ожидалось.
Изменяемые аргументы функций по умолчанию в Python на самом деле не инициализируются при каждом вызове функции. Вместо этого в качестве значения по умолчанию используется недавно присвоенное им значение. Когда мы явно передали [] в some_func качестве аргумента значение default_arg переменной по умолчанию не использовалось, поэтому функция вернулась, как ожидалось.
Хотите узнать больше об IT-профессии? Начните с бесплатного онлайн-интенсива Skillbox «Как выбрать язык программирования и найти работу». Выберите направление карьерной деятельности, которое будет интересно именно вам.
За 3 дня вы:
✅ попробуете сразу несколько востребованных IT-направлений;
✅ узнаете, сколько платят разным IT-специалистам и на кого сейчас есть спрос;
✅ на практике познакомитесь с самыми популярными языками программирования;
✅ научитесь составлять резюме и готовиться к собеседованиям.
Интенсив бесплатный, а каждый участник получит полезные подарки. Автору лучшей практической работы по мнению спикера подарим скидку 99% на курс Skillbox 😉
Первый вебинар уже скоро — начинаем 5 июня в 19:00 (МСК). Скорее записывайтесь по ссылке 👉 https://epic.st/_HNvy
За 3 дня вы:
✅ попробуете сразу несколько востребованных IT-направлений;
✅ узнаете, сколько платят разным IT-специалистам и на кого сейчас есть спрос;
✅ на практике познакомитесь с самыми популярными языками программирования;
✅ научитесь составлять резюме и готовиться к собеседованиям.
Интенсив бесплатный, а каждый участник получит полезные подарки. Автору лучшей практической работы по мнению спикера подарим скидку 99% на курс Skillbox 😉
Первый вебинар уже скоро — начинаем 5 июня в 19:00 (МСК). Скорее записывайтесь по ссылке 👉 https://epic.st/_HNvy
Округляет, как банкир (ч.1)
Давайте реализуем наивную функцию для получения среднего элемента списка
Это не ошибка точности с плавающей запятой, на самом деле, такое поведение является преднамеренным. Начиная с Python 3.0, round() использует округление банкира, где дроби .5 округляются до ближайшего четного числа:
Давайте реализуем наивную функцию для получения среднего элемента списка
Это не ошибка точности с плавающей запятой, на самом деле, такое поведение является преднамеренным. Начиная с Python 3.0, round() использует округление банкира, где дроби .5 округляются до ближайшего четного числа:
Округляет, как банкир (ч.2)
Это рекомендуемый способ округления дробей .5, как описано в IEEE 754. Однако в школе большую часть времени преподают другой способ (округление от нуля), поэтому округление банкира, вероятно, не так хорошо известно. Кроме того, некоторые из самых популярных языков программирования (например: JavaScript, Java, C / C ++, Ruby, Rust) также не используют банковское округление.
Следовательно, это все еще довольно специфично для Python и может привести к путанице при округлении дробей.
Смотрите Документы round() или этот поток stackoverflow для получения дополнительной информации.
Обратите внимание, что get_middle([1]) было возвращено только 1, потому что индекс был round(0.5) - 1 = 0 - 1 = -1, возвращая последний элемент в списке.
Это рекомендуемый способ округления дробей .5, как описано в IEEE 754. Однако в школе большую часть времени преподают другой способ (округление от нуля), поэтому округление банкира, вероятно, не так хорошо известно. Кроме того, некоторые из самых популярных языков программирования (например: JavaScript, Java, C / C ++, Ruby, Rust) также не используют банковское округление.
Следовательно, это все еще довольно специфично для Python и может привести к путанице при округлении дробей.
Смотрите Документы round() или этот поток stackoverflow для получения дополнительной информации.
Обратите внимание, что get_middle([1]) было возвращено только 1, потому что индекс был round(0.5) - 1 = 0 - 1 = -1, возвращая последний элемент в списке.
Иголки в стоге сена (ч.4)
В 4-м фрагменте на AssertionError был поднят вопрос, потому что вместо утверждения отдельного выражения a == b мы утверждаем весь кортеж. Следующий фрагмент прояснит ситуацию,
В 4-м фрагменте на AssertionError был поднят вопрос, потому что вместо утверждения отдельного выражения a == b мы утверждаем весь кортеж. Следующий фрагмент прояснит ситуацию,
>>> a = "python"
>>> b = "javascript"
>>> assert a == b
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError
>>> assert (a == b, "Значения не равны")
<stdin>:1: SyntaxWarning: assertion is always true, perhaps remove parentheses?
>>> assert a == b, "Значения не равны"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AssertionError: Values are not equal