Вакансии по Python за прошлую неделю:
👩💻 Python Developer (Backend). ТРЕЙД, ЗП по договоренности
👩💻 QA auto Python. IBS, ЗП по договоренности
👩💻 Аналитик-разработчик (Python+React). От 200 т.р.
👩💻 Python developer. Лайв Тайпинг, 250-300 т.р.
Please open Telegram to view this post
VIEW IN TELEGRAM
Tips & Tricks. Преобразование чисел в строки в Python
Разбираем встроенную функцию
Читать статью
#строки #tipsandtricks
Разбираем встроенную функцию
str()
и конкатенацию, а также рассказываем, как избежать преобразования типов данных.Читать статью
#строки #tipsandtricks
Задача на логику. Пачкаем карандаши
У Коли есть два карандаша одинаковой длины: красный и синий. Красный на один сантиметр снизу запачкан белой краской.
Мальчик прижал грань синего карандаша к грани красного (при этом у синего тоже запачкался белой краской сантиметр грани) и сначала сдвинул синий на 1 см вниз, а затем сдвинул в исходное положение. Эти действия Коля повторил еще 9 раз (т.е. всего было 20 движений), при этом красный карандаш оставался неподвижным.
Если допустить, что белая краска не высыхает, не истощается и стабильно пачкает карандаши, то на сколько сантиметров в длину окажется запачканным красный карандаш после двадцатого движения синего?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
У Коли есть два карандаша одинаковой длины: красный и синий. Красный на один сантиметр снизу запачкан белой краской.
Мальчик прижал грань синего карандаша к грани красного (при этом у синего тоже запачкался белой краской сантиметр грани) и сначала сдвинул синий на 1 см вниз, а затем сдвинул в исходное положение. Эти действия Коля повторил еще 9 раз (т.е. всего было 20 движений), при этом красный карандаш оставался неподвижным.
Если допустить, что белая краска не высыхает, не истощается и стабильно пачкает карандаши, то на сколько сантиметров в длину окажется запачканным красный карандаш после двадцатого движения синего?
Решение тут. Просьба потратить хотя бы 10 минут перед тем как читать решение.
#логическаязадача
Объектно-ориентированное
программирование с
помощью Python
Автор: Ирв Кальб
Год издания: 2024
#python #ru #2O24
Скачать книгу
программирование с
помощью Python
Автор: Ирв Кальб
Год издания: 2024
#python #ru #2O24
Скачать книгу
Основы. Практическое введение в логические операторы Python
В программировании нам часто приходится принимать решения на основе нескольких условий. Например, мы можем захотеть выполнить какое-то действие только при одновременном выполнении нескольких условий. Или же мы можем захотеть запустить это действие при выполнении любого из нескольких условий. Для работы с такими сценариями Python предлагает набор логических операторов — and, or, not.
#основы
В программировании нам часто приходится принимать решения на основе нескольких условий. Например, мы можем захотеть выполнить какое-то действие только при одновременном выполнении нескольких условий. Или же мы можем захотеть запустить это действие при выполнении любого из нескольких условий. Для работы с такими сценариями Python предлагает набор логических операторов — and, or, not.
#основы
Тест. Работа с матрицами в Python
Матрица (или двухмерный массив) не часто используется в Python. Но подобные массивы нужны для неодномерных данных и Data Science.
Проверьте, насколько хорошо вы умеете работать с матрицами: пройдите тест из 10 вопросов!
#тест
Матрица (или двухмерный массив) не часто используется в Python. Но подобные массивы нужны для неодномерных данных и Data Science.
Проверьте, насколько хорошо вы умеете работать с матрицами: пройдите тест из 10 вопросов!
#тест
Топ. Как прочитать текстовый файл в Python
В Python есть несколько способов прочитать текстовый файл. В этой статье мы рассмотрим функцию
#топ
Читать статью
В Python есть несколько способов прочитать текстовый файл. В этой статье мы рассмотрим функцию
open()
, методы read()
, readline()
, readlines()
, close()
и ключевое слово with
.#топ
Читать статью
Pythonist
Как прочитать текстовый файл в Python
Разбираем, как открыть и прочитать текстовый файл в Python. Рассматриваем методы open(), read(), readline(), readlines(), close() и with.
Вакансии по Python за прошлую неделю:
👩💻 Middle Python developer (Backend). Golden Mid, $10-15/час
👩💻 QA auto Python. IT_One, 200-250 т.р.
👩💻 Full Stack Разработчик (React, Python, FastAPI). Home Digital School, до 250 т.р.
👩💻 Разработчик Python / Django. Archeon, 70-200 т.р.
👩💻 Tech Lead Python‑разработчик. IT Tihonova Search, ЗП договорная
👩💻 Python разработчик Middle+/Senior. Arcanis, $3000-4000
Please open Telegram to view this post
VIEW IN TELEGRAM
Задача с кодом. Кратна ли цифра цифре слева?
Напишите функцию, которая будет принимать число n и проверять, кратна ли каждая его цифра цифре, стоящей слева от нее. Верните массив булевых значений результатов проверок.
Примеры:
# слева от 7 нет элемента = False
# 3/7 = False
# 3/3 = True
# 1/3 = False
# 2/1 = True
Примечание: массив всегда будет начинаться с False, поскольку слева от первой цифры ничего нет.
Решение на нашем сайте.
#задача #coding
Напишите функцию, которая будет принимать число n и проверять, кратна ли каждая его цифра цифре, стоящей слева от нее. Верните массив булевых значений результатов проверок.
Примеры:
divisible_by_left(73312)
➞ [False, False, True, False, True]# слева от 7 нет элемента = False
# 3/7 = False
# 3/3 = True
# 1/3 = False
# 2/1 = True
divisible_by_left(1)
➞ [False]divisible_by_left(635)
➞ [False, False, False]Примечание: массив всегда будет начинаться с False, поскольку слева от первой цифры ничего нет.
Решение на нашем сайте.
#задача #coding
Tips & Tricks. Проверяем наличие подстроки в строке
Рассказываем о четырех способах найти подстроку в строке. Также кратко рассматриваем плюсы и минусы каждого способа.
Читать статью
#строки
Рассказываем о четырех способах найти подстроку в строке. Также кратко рассматриваем плюсы и минусы каждого способа.
Читать статью
#строки
Задача на логику. Что дороже?
Один сапфир и два топаза
ценней, чем изумруд, в три раза.
А семь сапфиров и топаз
его ценнее в восемь раз.
Определить мы просим вас,
сапфир ценнее иль топаз?
Пишите свои варианты в комментариях, а правильный ответ мы опубликуем завтра.
#логическаязадача
Один сапфир и два топаза
ценней, чем изумруд, в три раза.
А семь сапфиров и топаз
его ценнее в восемь раз.
Определить мы просим вас,
сапфир ценнее иль топаз?
Пишите свои варианты в комментариях, а правильный ответ мы опубликуем завтра.
#логическаязадача
Pandas - инструмент, который делает жизнь аналитика проще и приятней, а работу - эффективней.
Научиться работать с Pandas на реальных задачах бизнеса можно на бесплатном курсе от Simulative.
За неделю обучения вы:
🕗 Обучение проходит на платформе школы
Please open Telegram to view this post
VIEW IN TELEGRAM
Machine Learning with Python Cookbook
Автор: Kyle Gallatin
Год издания: 2024
#python #en #2O24
Скачать книгу
Автор: Kyle Gallatin
Год издания: 2024
#python #en #2O24
Скачать книгу
От чего зависит эффективность автотестов?
От их правильного написания и поддерживаемости!
В QA GURU мы учим приручать Java, чтобы ваши автотесты работали, как часы. Вот несколько лайфхаков, о которых мы расскажем на вводном занятии уже сегодня (20:00 Мск):
1. Используйте понятные и описательные названия тестов
Названия тестов должны четко отражать их цель. Это упрощает понимание кода всеми членами команды.
Например:
// Хорошо
// Плохо
Описательные названия помогают быстро понять, что проверяет тест, без необходимости изучения его внутренней логики.
2. Применяйте Page Object Model (POM)
Page Object Model позволяет отделить логику теста от структуры веб-страницы, что делает код более модульным и удобным для поддержки при изменениях интерфейса.
Пример использования:
// Класс
// Тестовый сценарий
POM способствует повторному использованию кода и улучшает читаемость тестов.
3. Используйте параметризацию и data-driven подход
Параметризованные тесты позволяют запускать один и тот же сценарий с различными входными данными, что увеличивает охват тестирования без дублирования кода.
Этот подход делает тесты более гибкими и масштабируемыми.
4. Следуйте принципу AAA (Arrange, Act, Assert)
Структурируйте тесты в три этапа:
Arrange: подготовка данных и окружения.
Act: выполнение действия.
Assert: проверка результата.
Пример:
Этот подход делает тесты более организованными и легко читаемыми.
5. Логирование и отчетность
Добавляйте логирование в тесты для диагностики проблем:
Интеграция инструментов отчетности (например, Allure) помогает визуализировать результаты тестов и быстро выявлять ошибки.
6. Регулярные ревью кода
Проводите регулярные ревью автотестов для повышения качества кода. Это помогает выявить потенциальные проблемы, улучшить читаемость и обеспечить соблюдение стандартов кодирования.
7. Автоматизация и CI/CD
Используйте инструменты автоматизации (Maven, Gradle) для запуска тестов в рамках CI/CD пайплайнов. Это ускоряет процесс разработки и обеспечивает стабильность приложения на всех этапах.
Хотите узнать больше? Присоединяйтесь сегодня (20:00 Мск) к нашему бесплатному открытому уроку!
🔗 Зарегистрируйтесь на первый открытый урок по ссылке.
От их правильного написания и поддерживаемости!
В QA GURU мы учим приручать Java, чтобы ваши автотесты работали, как часы. Вот несколько лайфхаков, о которых мы расскажем на вводном занятии уже сегодня (20:00 Мск):
1. Используйте понятные и описательные названия тестов
Названия тестов должны четко отражать их цель. Это упрощает понимание кода всеми членами команды.
Например:
// Хорошо
public void verifyLoginWithValidCredentials() { ... }
// Плохо
public void test1() { ... }
Описательные названия помогают быстро понять, что проверяет тест, без необходимости изучения его внутренней логики.
2. Применяйте Page Object Model (POM)
Page Object Model позволяет отделить логику теста от структуры веб-страницы, что делает код более модульным и удобным для поддержки при изменениях интерфейса.
Пример использования:
// Класс
Page Object
public class LoginPage {
private By usernameField = By. id("username");
private By passwordField = By. id("password");
private By loginButton = By. id("loginBtn");
public void enterUsername(String username) {
driver.findElement(usernameField).sendKeys(username);
}
public void enterPassword(String password) {
driver.findElement(passwordField).sendKeys(password);
}
public void clickLoginButton() {
driver.findElement(loginButton).click();
}
}
// Тестовый сценарий
LoginPage loginPage = new LoginPage(driver);
loginPage.enterUsername("john.doe");
loginPage.enterPassword("password123");
loginPage.clickLoginButton();
POM способствует повторному использованию кода и улучшает читаемость тестов.
3. Используйте параметризацию и data-driven подход
Параметризованные тесты позволяют запускать один и тот же сценарий с различными входными данными, что увеличивает охват тестирования без дублирования кода.
@ ParameterizedTest
@ CsvSource({"john.doe, password123", "jane.smith, test@123"})
public void verifyLogin(String username, String password) {
LoginPage loginPage = new LoginPage(driver);
loginPage.enterUsername(username);
loginPage.enterPassword(password);
loginPage.clickLoginButton();
}
Этот подход делает тесты более гибкими и масштабируемыми.
4. Следуйте принципу AAA (Arrange, Act, Assert)
Структурируйте тесты в три этапа:
Arrange: подготовка данных и окружения.
Act: выполнение действия.
Assert: проверка результата.
Пример:
@ Test
public void testAddition() {
// Arrange
Calculator calculator = new Calculator();
// Act
int result = calculator.add(2, 3);
// Assert
assertEquals(5, result);
}
Этот подход делает тесты более организованными и легко читаемыми.
5. Логирование и отчетность
Добавляйте логирование в тесты для диагностики проблем:
log. info("Entering username: " + username);
log. info("Clicking on the login button");
Интеграция инструментов отчетности (например, Allure) помогает визуализировать результаты тестов и быстро выявлять ошибки.
6. Регулярные ревью кода
Проводите регулярные ревью автотестов для повышения качества кода. Это помогает выявить потенциальные проблемы, улучшить читаемость и обеспечить соблюдение стандартов кодирования.
7. Автоматизация и CI/CD
Используйте инструменты автоматизации (Maven, Gradle) для запуска тестов в рамках CI/CD пайплайнов. Это ускоряет процесс разработки и обеспечивает стабильность приложения на всех этапах.
Хотите узнать больше? Присоединяйтесь сегодня (20:00 Мск) к нашему бесплатному открытому уроку!
🔗 Зарегистрируйтесь на первый открытый урок по ссылке.
Тест. Классы и объекты (уровень — Junior)
Язык Python – типичный представитель ООП-семейства, обладающий элегантной и мощной объектной моделью. В этом языке от объектов никуда не спрятаться (ведь даже числа являются ими).
Проверьте, насколько хорошо вы знаете эту тему: пройдите тест из 10 вопросов!
#тест #ооп
Язык Python – типичный представитель ООП-семейства, обладающий элегантной и мощной объектной моделью. В этом языке от объектов никуда не спрятаться (ведь даже числа являются ими).
Проверьте, насколько хорошо вы знаете эту тему: пройдите тест из 10 вопросов!
#тест #ооп
Топ. Алгоритмы поиска на Python
Умение выбрать нужный алгоритм для конкретной задачи является ключевым навыком для разработчиков.
В этой статье:
- операторы членства (Membership Operators)
- линейный поиск
- бинарный поиск
- улучшенный линейный поиск — Jump Search
- поиск Фибоначчи
- экспоненциальный поиск
- интерполяционный поиск
#топ #алгоритмы
Читать статью
Умение выбрать нужный алгоритм для конкретной задачи является ключевым навыком для разработчиков.
В этой статье:
- операторы членства (Membership Operators)
- линейный поиск
- бинарный поиск
- улучшенный линейный поиск — Jump Search
- поиск Фибоначчи
- экспоненциальный поиск
- интерполяционный поиск
#топ #алгоритмы
Читать статью
Pythonist
Алгоритмы поиска на Python
Поиск информации в различных структурах данных является важной частью многих приложений. В этой статье мы рассмотрим алгоритмы поиска на Python.