TGViewer
Channel Public Channel
Zen of Python

Zen of Python

@zen_of_python

Полный Дзен Пайтона в одном канале

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/xZOL
Subscribers
18.8K
Photos
1.5K
Videos
202
Links
3.7K

Showing posts older than #2568 · Back to latest

Older Posts 20 shown
Post #2567 4.91K
​Как быстро найти отличия в длинных похожих строках

Чтобы сравнить две строчные последовательности (например, генов):

seq1 = 'atgcttcggcaagactcaaaaaata'
seq2 = 'atscttcsscaagactaaaaaaata'

можно использовать комбинацию zip() и enumerate(). Первая сопоставит символы с одинаковыми индексами, а вторая – присвоит каждой паре символов порядковый номер (здесь всего 24):

zip_seqs = zip(seq1, seq2)
enum_seqs = enumerate(zip_seqs)

Чтобы найти отличающиеся символы, достаточно сравнить символы попарно:

for i, (a, b) in enum_seqs:
if a != b:
print(f'index: {i}')

... index: 2
... index: 7
... index: 8
... index: 16

#лучшиепрактики
  • ❤ 12
  • 👍 3
  • 👌 3
Post #2566 5.43K
​Прекрасная утилита для написания регулярок

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

При просмотре скрина легче не особо становится, но вся прелесть инструмента раскрывается, когда вы пишете выражение с нуля. И, что важно, с такими паттернами прекрасно дружит библиотека re, дополнительной подгонки не требуется.

#regex
  • 👍 10
  • 🔥 3
  • 💩 1
Post #2565 5.21K
Типичный курс Python для начинающих be like:
  • 😁 49
  • 🤡 6
  • 👍 5
  • 💩 3
  • 🙏 2
Post #2563 5K
​Бенчмаркинг Python 3.10 vs. 3.11: на 64% быстрее?

Благодаря подписчику @Trizalio мы можем поделиться с вами прекрасной статьёй: сравнение производительности разных версий Python.

Автор статьи запускает разные версии ЯП в Docker и использует утилиту pyperformance, чтобы вычислить время исполнения аналогичных скриптов.

#факты
  • ❤ 15
  • 👍 5
  • 😨 3
Post #2562 4.77K
​Как выбрать тему для PyCharm

Рано или поздно большинство разработчиков приходят к осознанию — удобство IDE влияет на многое: скорость решения затыка, среднюю длительность беспрерывной работы, удобство настройки интерфейса. Так что сегодня мы рассказали в статье о темах для PyCharm, об их видах и процессе установки.

#pycharm
  • 🤣 9
  • 🤔 7
  • 👎 3
  • 👍 2
Post #2560 4.83K
​Обработка больших файлов в Python с использованием параллельных процессов

Чтобы ускорить процессинг крупных объектов, вы можете разделить задачу на несколько подпроцессов. Это позволяет программе сократить длину рантайма.

В статье вы узнаете, как сократить время обработки с помощью multiprocessing, joblib и tqdm.

#multiprocessing
  • 🔥 6
Post #2559 4.77K
​Преобразование русской речи в текст

В статье вы узнаете, как осуществить транскрибацию русской речи в текст при помощи Python и библиотеки vosk с использованием Deep Learning.

#texttospeech
  • 👍 5
  • 🔥 2
Post #2558 4.55K
Подборка актуальных вакансий

— Middle / Senior Backend-разработчик (Python) в Гринатом
Где: удалённо
Опыт: от 3 лет

— Программист-разработчик Python в Гринатом
Где: удалённо
Опыт: от 2 лет

— QA Automation (Python) в Иннотех
Где: удалённо
Опыт: от 3 лет

— Data Scientist в Открытие
Где: Москва, можно удалённо
Опыт: от 2 лет

— Team Lead Python-разработчик в Гринатом
Где: удалённо
Опыт: от 5 лет

— Data Engineer в Гринатом
Где: Москва
Опыт: от 3 лет

— Senior Python-разработчик в МТС
Где: Москва, можно удалённо
Опыт: от 4 лет

#вакансии #работа
  • 👍 4
  • 👎 4
  • 💩 3
Post #2557 4.52K
​Превратить кортеж в словарь одной строкой? Легко!

Допустим, у нас есть кортеж, где каждое значение – строка из двух символов:

values = ('a1', 'b2', 'c3')

Если “навесить” функцию dict():

print(dict(values))

то в результате мы получим словарь с разделёнными на «ключ – значение» парами:

{'a': '1', 'b': '2', 'c': '3'}

#лучшиепрактики
  • 🤮 18
  • 🤡 5
  • 💩 4
  • 👍 2
  • 👎 2
Post #2556 4.47K
​Финал баттла программистов

Выберите тех, кого вы лично считаете лучшим программистом мира, но помните: не ориентируйтесь на их популярность, востребованность или устоявшиеся топы лучших программистов. В этом турнире важны только народная любовь и ваша субъективная оценка.

За первое и второе место будут бороться:
— Бьёрн Страуструп, создатель С++;
— Линус Торвальдс, создатель Linux.

За третье и четвёртое место будут бороться:
— Андерс Гейлсберг, создатель Turbo Pascal, Delphi, C# и TypeScript;
— Билл Гейтс, сооснователь Microsoft.

Ссылка на голосование

#баттлпрограммистов
  • 💩 8
  • 🤡 5
  • 👍 2
Post #2555 4.43K
Ребят, ищем пишущего IT-редактора блогов в Tproger

Условия: удалёнка, фултайм

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

Требования:
— пишешь логично и ёмко, видишь стилистические и речевые ошибки в тексте.
— быстро находишь и проверяешь информацию (в том числе в англоязычных источниках).
— любишь общаться с экспертами и умеешь их разговорить.
— спокойно реагируешь на комментарии, но можешь отстоять свою позицию, если правка неуместна.
— тактично вносишь правки, чтобы автор не расстраивался, а был благодарен за помощь.
— знаешь, что такое ключевое слово, мета-описание и зачем нужен Wordstat.

Чтобы откликнуться, заполняйте анкету.
  • 👍 4
  • ❤ 1
  • 👎 1
  • 🤩 1
  • 💩 1
Post #2554 4.61K
​Способ выделить уникальные элементы списка: фильтр Блума

Фильтр Блума позволяет быстро определить, не входит ли элемент в заданное множество. Операции вставки и проверки выполняются за постоянное время, независимо от размера множества. Библиотека bloom-filter как раз и помогает реализовать такую функциональность:

# Инициируем экземпляр фильтра
bloom = BloomFilter(max_elements=10000, error_rate=0.1)

# Проверка на наличие "test-key"
assert "test-key" in bloom is False

#лучшиепрактики
  • 👍 8
  • ❤‍🔥 1
  • 🔥 1
Post #2553 4.65K
​Рейтинг лучших программистов в мире 2023: полуфинал

В сегодняшнем раунде участвуют две пары:

— Бьёрн Страуструп, создатель С++;
— Билл Гейтс, сооснователь Microsoft.

— Андерс Гейлсберг, создатель Turbo Pascal, Delphi, C# и TypeScript;
— Линус Торвальдс, создатель Linux.

Ссылка на голосование

#баттлпрограммистов
  • 💩 26
  • 🏆 3
  • 👍 1
Post #2552 4.76K
​Как применяется _ (нижнее подчёркивание)

1. Для читаемости больших чисел:
num = 9_000_000
binaryNum = 0b0_101
hexNum = 0x5_4fa

2. Для удержания в памяти временного «бесхозного» объекта. Если в Jupyter Notebook в ячейке один произвести операцию сложения:

4 + 5

то вызвать результат этого сложения в ячейке № 2 можно с помощью _:

>>> _
... 9

#лучшиепрактики
  • 👍 7
Post #2551 4.84K
​Простейшее объяснение, зачем нужны Dunder-методы

Допустим, у нас есть класс Fruit с названием и ценой, плюс некие собственные методы.

class Fruit:
def __init__(self, name, cost):
self.name = name
self.cost = cost

def method(self):
pass

Напрямую создавать экземпляры, передавая название и цену, не получится. НЯ ужно использовать магический метод __str__():

def __str__(self):
return f'{self.name}, €{self.cost}'

И теперь, если мы создадим экземпляр класса Fruit:

banana = Fruit('Banana', 10.5)

то он «схватит» аргументы в нужном режиме:

>>> print(banana)
... Banana, €10.5

#лучшиепрактики
  • 💩 16
  • 👍 15
  • 👎 4
  • ❤ 2
  • 😁 1
Post #2550 4.84K
​Autopep: наводим порядок в коде

Интересный чистильщик кода autopep8 приведёт ваш файл.py к читаемому и корректному состоянию:

pip install --upgrade autopep8
autopep8 --in-place filename.py

Помимо привычных возможностей, вроде корректировки отступов:
— конвертация многострочных комментариев из # в ''';
— разделяет код на строки согласно кастомной максимальной допустимой длине.

#факты
  • 👍 7
  • ❤ 2
  • 😁 1
Post #2549 4.82K
​Перенос строки

С помощью наклонной черты \ (backslash) можно разрывать длинный код на несколько строк:

a_variable = True
b_variable = True
c_variable = False

if a_variable == True \
and b_variable == True \
and c_variable == False:
print('Like for more!")

#факты
  • 👍 17
  • 👎 10
  • ❤ 6
Post #2548 5.05K
​Интервью с Гвидо ван Россумом из Оксфорда

В своём англоязычном интервью создатель Python рассказал про:

— предпосылки создания языка (причем здесь язык C и shell-скрипты);
— сохранение мотивации;
— женщин в Python;
— предполагаемое будущее языка;
— крупные проблемы ЯП и другие интересные темы.

#факты
  • 👍 8
Post #2547 5.37K
​Latexify для перегонки кода на Python в LaTex

Уникальная в своём роде утилита, позволяющая конвертировать код в формулы. Поддерживает Pythons 3.7+.

Какие инструменты, упрощающие верстку LaTeX, вы знаете? Поделитесь в комментариях.

#факты
  • 👍 18
  • 🔥 9
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →