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 #2593 · Back to latest

Older Posts 20 shown
Post #2592 5.07K
​Библиотека для генерации одноразовых паролей

Двухфакторная аутентификация – это вполне подъёмно в первый же год кодинга на Python. С этим вам поможет библиотека PyOTP:

import pyotp
import time

totp = pyotp.TOTP('base32secret3232')
totp.now() # => '492039'

# OTP verified for current time
totp.verify('492039') # => True
time.sleep(30)
totp.verify('492039') # => False

Ссылка на репозиторий

#otp #2fa
  • 👍 11
  • 🔥 4
  • 💩 1
Post #2591 5.44K
​Обновлённый роадмап Data Science 2023

Если вы только подступились к Науке о данных, роадмап – хорошее средство сэкономить время. Так что представляем карту навыков глазами практикующего специалиста. На диаграмме Исикавы вы найдёте самые распространённые понятия и инструменты.

А подробнее — в статье по ссылке.

#карьера
  • ❤ 2
  • 🔥 2
  • 👍 1
  • 💩 1
Post #2590 4.96K
​Что нового в Python 3.11.4: библиотека zoneinfo

Теперь timestamp без временной зоны со своим плюсом в виде читаемости можно использовать без опаски: с помощью zoneinfo к нему добавляется атрибут — данные о часовом поясе:

from zoneinfo import ZoneInfo
from datetime import datetime, timedelta

dt = datetime(2020, 10, 31, 12, tzinfo=ZoneInfo("America/Los_Angeles"))
print(dt)
2020-10-31 12:00:00-07:00

dt.tzname()
'PDT'

Документация
  • 👎 2
  • 👏 1
Post #2587 5.23K
​Библиотека для работы со съемными устройствами

PyUSB — библиотека, предназначенная для удобного взаимодействия с USB. Позволяет находить устройства, читать и записывать данные.

pip install pyusb

import usb.core
import usb.util

dev = usb.core.find(find_all=True) # найдет подключенные USB-устройства

device.write(drive_name, data.txt) # Запишет на носитель

Документация

#лучшиепрактики
  • ❤ 10
Post #2586 5.53K
​asyncio для сетевых инженеров

Исчерпывающий гайд, с помощью которого вы узнаете, в чём разница между параллельными процессами, потоками и асинхронным программированием.

Руководство под авторством Натальи Самойленко разделено на несколько частей:

— основы работы с сопрограммами;
— асинхронные модули;
— создание классов в asyncio;
— использование модуля asyncio;
— работа с циклом событий.

Документация также дополняется блоком заданий и примеров кода.

#asyncio
  • ❤ 7
  • 🔥 4
  • 👍 3
Post #2585 6.09K
​Один из 20.000 пользователей StackOverflow ищет, как выйти из Vim

В этом году Stack Overflow достигли интересного показателя: более миллиона пользователей форума ищут решение вышеупомянутой задаче.

А на каком месяце / году программирования вы запомнили, как выйти из этого редактора? Поделитесь в комментариях.

#факты
  • 🔥 18
  • 😁 7
  • 💩 2
  • 👍 1
Post #2584 4.89K
​Аналоги Vim

Хотя этот редактор кода и является предустановленным для систем вроде Linux, однако зачастую его пользователи хотят познакомиться с более удобными альтернативами. Вашему вниманию перечень редакторов кода, подходящих для операционок без графического интерфейса (aka terminal based editors):

— nano;
— neovim;
— vis;
— slap.

А какими аналогами Vim вы пользовались? Поделитесь в комментариях.

#nano #neovim
  • 💩 6
  • 👍 5
  • ❤ 1
Post #2583 4.97K
​Что нового в Python 3.11.4: точка прерывания отладки

Теперь вы можете вызвать функцию breakpoint(), чтобы

>>> def calculate_sum(a, b):
>>> result = a + b
>>> breakpoint()
>>>
>>> x = 5
>>> у = 10
>>> z = calculate_sum(x, у)
>>> print(z)

... -> breakpoint() # Debugger breake tunn result
... (Pdb)

#лучшиепрактики
  • 🤔 15
  • 👍 3
  • 👎 2
  • ❤ 1
Post #2582 6.11K
​PostgreSQL с нуля на Python

Двухчасовой плейлист, обучающий основам работы с популярным хранилищем данных. Помимо базовых тем вроде создания таблицы и JOIN вы встретите там и такие разделы, как UPSERT и идентификаторы UUID. Серия уроков подходит новичкам в Python и может стать комфортным способом познакомиться с SQL-подобными системами,

Ссылка на плейлист

#postgresql
  • 🔥 14
  • 👍 5
  • 👎 1
  • 😁 1
Post #2581 5.4K
​Что нового в Python 3.11.4: оператор слияния словарей

Pipe-оператор | теперь может лаконично объединить два и более словарей:

dict1 = {"a": 1, "b": 2}
dict2 = {"c": 3, "d": 4}
merged_dict = dict1 | dict2
print (merged _dict) # Output: {'a': 1, 'b': 2, 'c': 3, 'd': 4}

#лучшиепрактики
  • 👍 39
  • 🔥 10
  • 👎 1
Post #2580 4.91K
  • 🔥 9
  • 💩 2
  • 👍 1
Post #2578 4.94K
Разработка на Python be like:
  • ❤ 47
  • 😁 26
  • 👍 4
  • 👎 3
  • 👨‍💻 3
Post #2577 4.96K
​SQL: вставка новых записей в БД или обновление существующих

Почти сразу при появлении SQL в работе появляется потребность обновлять базу. Однако вручную выслеживать, кто в большом наборе есть, а кого добавлять, — трата времени.

Запрос ниже добавляет новых сотрудников в перечень персонала. Если запись с таким именем уже существует, то эта инъекция обновит ее:

db = # WITH new_employees AS (
SELECT *
FROM (
VALUES ('George', 'Sales', 'Manager', 1000),
('Jane', 'R&D', 'Developer', 1200)
) AS t(name, department, role, salary)
)
INSERT INTO employees (name, department, role, salary)
SELECT name,
department,
role,
salary
FROM new_employees ON CONFLICT (name) DO
UPDATE
SET department = EXCLUDED.department,
role = EXCLUDED.role,
salary = EXCLUDED.salary
RETURNING *;

#SQL
  • 👍 9
  • ❤‍🔥 1
  • 👎 1
  • 🔥 1
Post #2576 5.04K
​Как бороться с прокрастинацией

Необычная англоязычная статья с talent500.co о работе с откладыванием задач у программистов. Помимо стандартных рекомендаций вроде планирования наперёд там вы найдёте ещё пару необычных техник от психоаналитиков.

#карьера
  • 👍 10
Post #2575 5.15K
​Подгрузка файлов на CDN c Python

CDN (Content Delivery Network) — распределённая система хранения данных, которая предоставляет собой набор серверов, отдающих файлы по принципу близости к пользователю.

pip install cdnupload
cdnupload /website/static s3://static-bucket --key-map=statics.json

Документация библиотеки

#cdn
  • 👍 7
Post #2574 5.71K
​Свой API на Django

Полуторачасовая серия уроков, посвящённая созданию своего API (Application Programming Interface). Этот урок хорош тем, что объясняет не только логику вёрстки API, но и помогает развернуть проект на Django с нуля.

Ссылка на плейлист

#api #django
  • 👌 13
  • 👍 1
Post #2573 5.99K
​Скончался создатель VIM, Брам Муленаар

Семья разработчика сообщила, что Брам ушёл из жизни 3 августа. Он посвятил значительную часть своей жизни развитию и совершенствованию Vim и с гордостью глядел на достижения сообщества.

Vim — это редактор с открытым исходным кодом. За время своего существования он получил множество наград и по-прежнему остается одним из самых популярных текстовых редакторов.

:wq!

#vim
  • 😢 102
  • 🫡 8
  • ❤ 3
  • 💩 2
Post #2570 5.79K
Большая книга примеров Python

Прекрасный гайд под авторством Марченко Антона – преподавателя МГУ. Книга знакомит с основной терминологией языка на доступных примерах. Это издание напоминает расшифровку документации и отличается упором на понятность. Помимо прекрасной подборки частоиспользуемых понятий, это ещё и способ подготовится к собеседованию на Junior Python Developer.

#обучение
  • 👍 19
  • 🔥 6
Post #2569 4.76K
​Что полезного в свежей версии Python: необязательные элементы TypedDict

Существует такой интересный конструкт typing.TypedDict.Он позволяет добавлять подсказки о типах данных словарю:

class Point2D(TypedDict):
x: int
y: int
label: str

a: Point2D = {'x': 1, 'y': 2, 'label': 'good'} # OK
b: Point2D = {'z': 3, 'label': 'bad'} # Не пройдет проверку

Теперь TypedDict имеет необязательные элементы:

class Movie(TypedDict):
title: str
year: NotRequired[int]

m1: Movie = {"title": "Black Panther", "year": 2018} # OK
m2: Movie = {"title": "Star Wars"} # OK (год необязателен)
m3: Movie = {"year": 2022} # Ошибка (не заполнено обязательное поле)

Спасибо подписчику @Trizalio за годную подсказку.

Если вы знаете, о какой еще годной фиче из свежих релизов Python рассказать, поделитесь в комментариях. Интересные ответы мы превратим в посты с вашим упоминанием.

#лучшиепрактики
  • 👍 23
  • ❤ 1
Post #2568 5.01K
​Django: ваш первый проект

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

В данном руководстве вы найдёте инструкцию по настройке проекта Django, которая будет полезна на первых этапах работы.

#django
  • 👍 2
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 →