Погрузитесь в процессы тестирования на бесплатном онлайн-интенсиве Skillbox: 👉 https://clc.to/WlME_A
За 3 дня вы:
✔️ узнаете, как быстро находить баги на веб-страницах;
✔️ разберётесь, какие soft и hard skills нужны крутому специалисту;
✔️ освоите ручные и автоматизированные тесты;
✔️ попрактикуетесь на реальных задачах.
Познакомитесь с профессией, основами тестирования и ключевыми инструментами тестировщика. Проведёте свои первые тесты и поймёте, хотите ли развиваться в этом направлении.
Спикер интенсива — инженер по тестированию в Яндексе, организатор тест-сессий, митапов по тестированию и мастер-классов, участник конференций SQA-days, TechTrain и CodeFest Дмитрий Якин.
Подключайтесь к прямому эфиру 14–16 апреля в 19:00 по московскому времени.
🎁 Участвуйте, прокачайте знания и получите в подарок электронную книгу «Человек + машина». Всем, кто сдаст практическую работу, дарим сертификаты на 10 тысяч рублей на любой курс Skillbox.
Используйте шанс освоить высокооплачиваемую профессию!
Учимся читать код, изучая стандартную библиотеку Python
Итак, вы уже продвинутый новичок — вы изучили основы Python и способны решать реальные задачи.
Вы уже отходите от просмотра туториалов и чтения блогов; наверно, уже ощущаете, что в них излагаются одномерные решения простых придуманных задач; вероятно, вместо решения этой конкретной задачи вы хотите совершенствоваться в решении задач в целом.
Подробнее
Статья на Eng
Асинхронное программирование
Обычно мы пишем синхронный код - выполняется по порядку один за другим. Но иногда требуется, чтобы выполнялось несколько задач одновременно. К примеру, пока копируются файлы можно было поиграть в игру. Это возможно благодаря нескольким ядрам и потокам. ВАЖНО! Асинхронность не обязательно делает код быстрее, но может повысить его эффективность. В момент простаивания процессор будет переключаться на другие задачи.
На картинке программа, где повар готовит сразу несколько блюд. По другому бы нам пришлось по-очереди готовить каждое блюдо, но мы можем вернуться к другим, если поставили блюдо на огонь.
Подписывайтесь на канал 👉@pythonofff
PEP 424 allows generators and other iterable objects that don't have the exact predefined size to expose a length hint. For example, the following generator will likely return ~50 elements:
(x for x in range(100) if random() > 0.5)
If you write an iterable and want to add the hint, define the __length_hint__ method. If the length is known for sure, use __len__ instead.
If you use an iterable and want to know its expected length, use operator.length_hint.
📊 Какие есть базы данных для аналитики?
📌 Расскажем на открытом уроке 11 апреля в 20:00 в OTUS. Занятие проведет Егор Матешук, CDO AdTech-компании «Квант». Мы с экспертом рассмотрим особенности баз данных, используемых для аналитических задач. А также узнаем, какие базы можно отнести к этому классу и какие у них есть отличительные черты.
📚 Урок пройдет в рамках онлайн-курса «Data Engineer» в OTUS. Программа рассчитана на разработчиков, администраторов СУБД и всех тех специалистов, которые хотят решать сложные задачи в сфере работы с данными.
🎁В конце урока вас ждет🔥 промокод со скидкой 33% 🔥от преподавателя.
👉 Чтобы зарегистрироваться на занятие, пройдите вступительный тест https://otus.pw/TUs4/
Как работать с числами с плавающей точкой в Python
Числа с плавающей точкой — быстрый и эффективный способ хранения чисел и работы с ними. Но он связан с рядом трудностей для начинающих и опытных программистов! Вот классический пример:
>>> 0.1 + 0.2 == 0.3
False
Впервые увидев такое, можно растеряться. Такое поведение корректно! Поговорим о том, почему ошибки при операциях над числами с плавающей точкой так распространены, почему они возникают и как с ними справиться в Python.
VR и AR есть не только за рубежом, но и в России!
Что нового происходит в сфере VR/AR в нашей стране? Как эти технологии помогают бизнесу, промышленности и образованию? Какие кейсы реализовываются и какие крупные компании уже используют виртуальную и дополненную реальность?
Первый и единственный VR/AR-дайджест новостей российского рынка — «Вестник VR»
🔁 Если ты осознал безграничные возможности Python и активно ими пользуешься, то у Evrone есть достойное предложение для тебя. Наш Python-квиз - это возможность заявить о себе и выиграть приз. Seniors из Evrone подготовили 7 вопросов, ответишь правильно на каждый - станешь участником розыгрыша Yandex.Станции. Он пройдет уже 21 апреля - так что торопись.
✅ Участвовать в квизе
Кстати, мы уверены, что даже прожженный питонист сможет обнаружить что-нибудь новое для себя в нашем дайджесте.
➡️Подписывайся, и будь всегда готов к новым вызовам.
Изучаем две мощные функции map и filter, а также затрагиваем тему анонимных lambda-функций
Эти две функции - очень мощные инструменты в Python, которые входят в тему функционального программирования. Зачастую вместе с ними используют анонимные lambda-функции.
Подробнее
Подписывайтесь на канал 👉@pythonofff
You can use any object as a dictionary key in Python as long as it implements the __hash__ method. This method can return any integer as long as the only requirement is met: equal objects should have equal hashes (not vice versa).
You also should avoid using mutable objects as keys, because once the object becomes not equal to the old self, it can't be found in a dictionary anymore.
There is also one bizarre thing that might surprise you during debugging or unit testing:
In : class A:
...: def __init__(self, x):
...: self.x = x
...:
...: def __hash__(self):
...: return self.x
...:
In : hash(A(2))
Out: 2
In : hash(A(1))
Out: 1
In : hash(A(0))
Out: 0
In : hash(A(-1)) # sic!
Out: -2
In : hash(A(-2))
Out: -2
In CPython -1 is internally reserved for error states, so it's implicitly converted to -2.
Как обойти капчу: нейросеть на Tensorflow,Keras,python v числовая зашумленная капча
Тема капч не нова, тем не менее, алгоритмы капч меняются, как и алгоритмы их решения. Поэтому, предлагается помянуть старое и прооперировать следующий вариант капчи
Подробнее
Присоединяйся к команде VK!
Новый продукт без legacy кода, современный стэк технологий. Возможность роста в тимлида или архитектора, внутренние курсы и ревью кода от коллег.
– Уверенное знание Python
– Опыт работы от 2-х лет
– Опыт работы с реляционными СУБД
– Отличное знание базовых алгоритмов и структур данных, понимание архитектурных паттернов
– Понимание и практический опыт построения API для веб-приложений
Как проверить существование переменной в Python?
Вы можете использовать in locals() или in globals(), чтобы проверить переменная существует в Python, разница только:
in locals() проверяет если переменная объявлена в локальной зоне видимости
in globals() проверяет если переменная объявлена в глобальной зоне видимости
Подписывайтесь на канал 👉@pythonofff
If you have a CPU-heavy task and want to utilize all the cores you have, then multiprocessing.Pool is for you. It spawns multiple processes and delegates tasks to them automatically. Simply create a pool with Pool(number_of_processes) and run p.map with the list of inputs.
In : import math
In : from multiprocessing import Pool
In : inputs = [i ** 2 for i in range(100, 130)]
In : def f(x):
...: return len(str(math.factorial(x)))
...:
In : %timeit [f(x) for x in inputs]
1.44 s ± 19.2 ms per loop (...)
In : p = Pool(4)
In : %timeit p.map(f, inputs)
451 ms ± 34 ms per loop (...)
Разница между == и is
Недавно в чате наши подписчики затрагивали эту тему, поэтому мы решили разложить всё по полочкам, чтобы в дальнейшем не возникало вопросов.
Итак, оператор == проверяет равенство значений двух объектов. А оператор is в свою очередь проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.
Однако Python в целях производительности кеширует короткие строки и малые целые числа, поэтому возможны некоторые казусы, как в примере.
Подписывайтесь на канал 👉@pythonofff