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

Реклама: @anothertechrock

Перечень РКН: https://kurl.ru/gursU
加入频道
Что должен знать джуниор 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
Замена в списке

Расскажем, как заменить часть значений в списке, пользуясь синтаксическим сахаром языка. Пусть есть два списка:

>>> a = [1, 2, 3, 4, 10]
>>> b = [5, 6, 7]

нужно получить:

[1, 5, 6, 7, 10]

Делаем:

>>> a[1:4] = b

Получаем:

>>> a
[1, 5, 6, 7, 10]

Готово!

#списки #коллекции #слайсы
👍3🤯1
Друзья, кому под силу исправить код так, чтобы он корректно работал?

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

Давайте узнает кто самый главный "питонодав"😂
👍3
Печать списков

Если вдруг на собеседовании вам понадобится вывести список (или множество) чисел на печать одной строкой, то вот изящный способ это сделать:
 
>>> numbers = [1, 2, 3, 4, 5]
>>> print(*numbers)
1 2 3 4 5

Пользуйтесь!

#списки #множества #iterables #print
👏1
🐍 Совет по Python №3.

Есть такая штука, называется «12-факторное приложение».
Подробнее об этом манифесте вы можете прочитать здесь.

Так вот согласно одному из его принципов, ваше приложение не должно хранить в коде или даже в конфигурационных файлах различного рода секретные данные.
Вроде паролей и токенов.

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

А вы пользуетесь .env файлами? 🤔💭
🔥1
🐍 А вы знали? Выпуск №1.

В других языках такой конструкции нет, поэтому неудивительно - если для вас она выглядит слегка необычно.
👍1
У кого какие предположения почему такой результат?

Обязательно напишите свой вариант в комментариях
🔥1
Кроссовки настоящего Python программиста 🦾
Python это интерпретатор или компилятор?
Anonymous Quiz
16%
Компилятор
84%
Интерпретатор
🤔1
Форматирование текста

Модуль textwrap может использоваться для форматирования текста в ситуациях, когда требуется красивая печать. Он предлагает функциональность, аналогичную функциям заполнения абзацев, которые можно найти во многих текстовых редакторах и текстовых процессорах.
👍2