Python Turbo. Уютное сообщество Python разработчиков.
10.6K subscribers
242 photos
8 videos
1 file
182 links
Трюки и полезности Python.
Никакой воды, только полезные материалы.
Марафоны по кодингу, разбор вашего кода в чате.

Реклама: @anothertechrock

Перечень РКН: https://kurl.ru/gursU
加入频道
Магические методы

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

Давно хотели о них написать и подготовили для вас карточки.

Наслаждайтесь!
Вращайте барабан.

*Перед* запуском кода внимательно посмотрите, что он делает!
Лёгкая генерация сложного пароля при помощи метода random.sample.

Код из файла здесь.
1🔥1
Что должен знать джуниор Python-разработчик

Python является одним из самых популярных языков программирования в мире, но знать один лишь синтаксис — мало! В этом видео вы узнаете, что ещё необходимо знать начинающему Python разработчику, чтобы успешно устроиться на свою первую работу:

Смотреть видео

#видео
👏1
Одна особенность filter

Синтаксис встроенной функции filter такой:

filter(function, iterable).

Эта функция фильтрует значения переданной последовательности с помощью функции function. Если function получает очередной элемент последовательности и возвращает True, то элемент попадает в результат работы filter, иначе нет.

Например, таким способом можно отфильтровать только строки, состоящие из чисел:
 
>>> strings = ['two', 'list', '', 'dict', '100', '1', '50']
>>> list(filter(str.isdigit, strings))
['100', '1', '50']

Или только четные значения:
 
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list(filter(lambda x: x % 2 == 0, numbers))

Часто в качестве фильтров используют лямбда-функции или член-функции классов.

А еще (внезапно) вместо функции можно использовать None:
 
>>> random = [1, 'a', 0, False, True, '0', '']
>>> list(filter(None, random))
[1, 'a', True, '0']

И тогда filter вернет только truthy значения. 🐠
This media is not supported in your browser
VIEW IN TELEGRAM
- Йоу, сможешь нарисовать коронавирус на питоне?
- Дай мне 10 строк кода 🌚
👏1
Друзья, кому под силу исправить код так, чтобы он корректно работал?

Напиши в комментах, что нужно прописать вместо знаков вопросов.

Продолжаем вычислять главного "питонодава"😂
Задача про скобки.

Супер распространенная задача со скрининг-собеседований.

На вход подается строка, состоящая из круглых скобок. Выведите True, если скобки вложены правильно и False, если нет.

Например, если входная строка
(()(())), то ответ должен быть True.
А если ()), то False.

Это базовая задача на алгоритмы и решается она за один проход по строке (O(n)). Идея здесь следующая: нужно завести переменную-стек, которая будет хранить состояние скобки на i-том шаге и в зависимости от состояния принимать решение о том, валидная строка или нет.

Вот видео с более подробным описанием решения.

Вот возможное решение:

def if_balanced(string):
stack = []
for i in string:
if i == "(":
stack.append(i)
elif i == ")":
if not stack:
return False
stack.pop()
if stack:
return False
return True


print(if_balanced("()()())"))

Усложненная форма этой же задачи: на вход подаются строка со скобками разных видов, например, ([]{}) -> True, ({}([]{)}) -> False.

Можете решить ее самостоятельно.
👍1
🐍 Совет по Python №1.

А как вы конкатенируете/форматируете строки в Python?
🐍 Совет по Python №2.

В отличии от множества других языков, Python поддерживает простую и удобную конструкцию для свопа значения переменных.
🔥1