PythonBoost - сообщество питонистов
12.4K subscribers
292 photos
6 videos
542 links
Лучший Python телеграм канал для новичков.

Цель: подготовка студентов, начинающих питонистов к нахождению первой работы.

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Задача для новичков.

Напишите функцию isPowerOfThree(), которая принимает на вход целое число. Она должна возвращать True, если число является степенью тройки и False в противном случае.

Примеры работы данной функции:

isPowerOfThree(27) --> True
isPowerOfThree(-1) --> False
isPowerOfThree(20) --> False

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def isPowerOfThree(n: int) -> bool:
if n <= 0:
return False
while n % 3 == 0:
n //= 3
return n == 1

#pythonзадача #coбес
Задача для новичков.

Напишите функцию intersection() которая принимает два числовых массива. Данная функция должна вернуть список, состоящий из элементов, которые есть в каждом массиве, поданном на вход. Каждый элемент в результирующем списке должен быть уникальным, порядок элементов в нем не имеет значения.

Примеры работы данной функции:

intersection([4,9,5], [9,4,9,8,4]) --> [9, 4]
intersection([1,2,2,1], [2,2]) --> [2]

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def intersection(nums1, nums2) :
return list(set(nums1) & set(nums2))

#pythonзадача #coбес
Плейлист дня. Создание мини-блога на Django 4

Семь уроков по практическому использованию фреймворка Django.

#видео #django #english

Смотреть на YouTube
Тест. Логический тип данных (уровень Junior)

В Python, как и в других языках, есть логический тип переменных bool, который имеет всего два значения: True (истина) и False (ложь). Его возвращают логические операторы (например, при сравнении чисел или проверке наличия элемента в списке).

Хорошо ли вы умеете пользоваться булевыми значениями? Пройдите тест из 10 вопросов и проверьте!
Задача для новичков.

Напишите функцию isPerfectSquare(), которая определяет, является ли число поданное в качестве аргумента, полным квадратом другого числа. В это случае функция должна возвращать True, в противном случае False. Пользоваться встроенными функциями типа sqrt(), pow(), **0.5 запрещается.

Примры работы данной функции:

isPerfectSquare(16) --> True
isPerfectSquare(20) --> False
isPerfectSquare(121) --> True

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def isPerfectSquare(num):
if num < 1:
return False
left, right = 1, num
while left <= right:
mid = left + (right - left) // 2
square = mid * mid
if square == num:
return True
elif square < num:
left = mid + 1
else:
right = mid - 1
return False

#pythonзадача #coбес
Задача для новичков.

Напишите функцию getSum(), которая принимает два целых неотрицательных числа a и b, а возвращает их сумму. При этом пользоваться операторами + и - запрещается.

Примеры работы данной функции:

getSum(42, 5) --> 47
getSum(3, 7) --> 10
getSum(4, 0) --> 4

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def getSum(a, b):
while b != 0:
carry = a & b
a = a ^ b
b = carry << 1
return a

Данное решение не работает с отрицательными числами (по условиям задачи этого и не требовалось). Подумайте, как это можно исправить.

#pythonзадача #coбес
Статья дня. Тернарный оператор в Python

Из этого полного руководства вы узнаете, что собой представляют тернарные операторы в Python. Также мы на примерах разберем, когда и зачем их использовать.

Читать статью

#читать
Видео дня. Делаем безопасную перезапись файла с использованием contextlib

Безопасную перезапись файла можно реализовать при помощи менеджера контекста на базе класса. В этом видео мы решим ту же задачу, используя декоратор contextmanager из модуля contextlib стандартной библиотеки.

Ссылка на YouTube

#видео
Тест. Работа с функциями в Python

Функции — очень удобная конструкция, которая существует почти во всех языках программирования, включая Python. Но, используя функции, можно запутаться или допустить ошибку.

Проверьте, насколько хорошо вы умеете писать (и читать!) функции: пройдите тест из 10 вопросов!
Если вы хотели попробовать попасть в айти, но не знаете, как подступиться — попробуйте начать с тестирования.

🐞 Собеседование тестировщика — канал для тех, кто готовится к собеседования по тестированию.

Что там публикуется:
— вопросы с собесов и ответы на них;
— тесты для проверки ваших знаний;
— обучающие книги;

Канал рассчитан на начинающих и поможет разобраться в основах и лучших практиках QA, подготовит вас к прохождению собеседований.

Подписывайтесь: @qasobes
Статья дня. Поиск текста в нескольких файлах на Python

В этой статье мы будем искать текст или строку в нескольких файлах. План действий следующий: определяем директорию, в которой нужно искать, получаем список всех файлов в этой директории (в том числе во вложенных папках), а затем открываем каждый файл и ищем в нем нужный текст.

Читать статью

#читать
Задача для новичков.

Напишите функцию canConstruct(), которая принимает две строки, s и t. Данная функция должна возвращать True, если первую строку s можно составить из букв, которые входят во вторую строку t. Причем каждую букву из строки t можно использовать только один раз.

Примеры работы данной функции:

canConstruct("aa", "ab") --> False
canConstruct("aa", "aab") --> True

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

from collections import Counter

def canConstruct(s, t):
char_count_s = Counter(s)
char_count_t = Counter(t)

for char, count in char_count_s.items():
if count > char_count_t[char]:
return False

return True

Подумайте, как эту задачу можно решить без использования библиотеки collections.

#pythonзадача #coбес
Задача для новичков.

Напишите функцию lexicalOrder(), которая принимает на вход целое число n, а возвращает список чисел в диапазоне от 1 до n, отсортированный в лексикографическом порядке. Программа должна работать за линейное время (O(n)), а расход пямяти O(1).

Приверы работы данной функции:

lexicalOrder(13) --> [1, 10, 11, 12, 13, 2, 3, 4, 5, 6, 7, 8, 9]
lexicalOrder(2) --> [1, 2]

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def lexicalOrder(n: int) -> list[int]:
return [int(i) for i in sorted(str(i) for i in range(1, n + 1))]

#pythonзадача #coбес
Статья дня. Ключевое слово yield в Python

Функция, использующая ключевое слово yield, является функцией-генератором. Генераторы полезны, когда вам нужно итерировать значения, не сохраняя их в памяти. В этом руководстве мы разберем работу ключевого слова yield на высоком уровне, без технических подробностей.

Читать статью

#читать