Библиотека Python разработчика | Книги по питону
19.5K subscribers
1.05K photos
391 videos
82 files
989 links
Полезные материалы для питониста по Фреймворкам Django, Flask, FastAPI, Pyramid, Tornado и др.

По всем вопросам @evgenycarter

РКН clck.ru/3Ko7Hq
Download Telegram
Forwarded from Python академия
Оформление кода

Все вы знаете, что в python есть своя философия. Именно отсюда берутся определенные правила и стандарты. В пайтон такое соглашение назвали PEP 8 (читается - пэп).

Соответствие пепу позволяет видеть основную структуру вашего кода другим разработчикам. Не нужно привыкать к другому оформлению кода. Если вы привыкли как-то оформлять код, а увидели что-то совершенно другое, то вы поймете.

Официальная документация по PEP 8.

Основные моменты:

Используйте пробелы, разрешается использование табов, но смешивание запрещено. Отступ соответствует 4 пробелам. Хорошие редакторы кода автоматически заменяют табы на пробелы.

Вокруг операторов +, -, =, *, /, ** должны быть пробелы.

Строка не должна превышать 101 символа

Импорты можно делать только по одному на строку! При этом из одного модуля можно доставать несколько нужных объектов. Порядок тоже важен:

- стандартные библиотеки;
- сторонние;
- созданные вами

Подписывайтесь на канал 👉@pythonofff
👍8
Практика программирования на Python 3
Тимофей Хирьянов, Московский физико-технический институт

Смотреть на youtube
👍25🔥5👎4
Как работают массивы в Python?

Массивы и списки являются одними из наиболее полезных структур данных в программировании. Сегодня я расскажу вам основы, а также покажу несколько простых примеров Python массивов.

Подробнее
Десять способов для ускорения кода на Python

В последние годы было приложено много усилий для улучшения производительности Python. Сейчас можно быстро обрабатывать большие наборы данных, используя библиотеки numpy, scipy, pandas, numba. А также Pypy, которая ускоряет выполнение кода на Python, в несколько раз.

В этой статье я поделюсь десятью способами ускорения Python без использования сторонних инструментов. Приведенные в данной статье примеры доступны в этом репозитории на Github.

Читать далее
👍11
❗️С начала марта зарубежные IT-компании ограничивают или полностью закрывают доступ к своим продуктам пользователям из России. В списке, среди прочих, — Azure, AWS, Oracle и другие крупные компании. Российские гиганты, такие как Яндекс и VK, перегружены заявками на переезд в облако.

Рассказываем про альтернативу существующих сервисам:

🔥 Масштабируемые облачные серверы, S3, DBaaS, K8s, Load balancer и ряд других сервисов доступны в облаке Timeweb Cloud.

Компания не зависит от зарубежных вендоров ПО и размещает оборудование на территории РФ в ЦОД уровня TIER III. Перенос проектов от зарубежных и российских провайдеров осуществляет бесплатно.

⚡️В отличие от конкурентов, они до сих пор не подняли цены. Переходи по ссылке и пользуйся современным облаком по старым ценам.
👍14🔥9👎2
Forwarded from Python академия
Анонимные функции

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

Для таких случаев существуют лямбда функции, так выглядит их создание:
<аргументы>: <выражение>

Такие функции обязан знать каждый программист, их применение сильно сокращает код.

Подписывайтесь на канал 👉@pythonofff
👍8
Мы в Хекслете не понаслышке знаем о силе обучения и весомости плавного погружения в новую профессию. Наша профессия «Python-разработчик» поможет новичку повысить свой level и трудоустроиться 😎
👍4
If dict remembers the order of elements in Python3.6+, why do you need collections.OrderedDict anymore? That's why:

>>> OrderedDict(a=1, b=2) == OrderedDict(b=2, a=1)
False
>>> dict(a=1, b=2) == dict(b=2, a=1)
True
👍4
Forwarded from Python академия
Как вывести все методы класса в Python?

Для того, чтобы вывести все методы класса, Вы можете воспользоваться методами dir(), callable(), getattr()

Посмотреть пример в онлайн редакторе.

Подписывайтесь на канал 👉@pythonofff
👍4
Расскажем, чем занимается дизайнер интерфейсов, и что делать, чтобы получить новую профессию.

Для кого:
— дизайнеров, которые планируют углубиться в сферу UX/UI-дизайна;
— специалистов из смежных профессий (разработчики, продакт-менеджеры), которые хотят погрузиться в дизайн интерфейсов;
— для всех, кто хочет поменять профессию и с нуля освоить UX/UI-дизайн;

22 марта в 19.00 по мск
Зарегистрироваться
👍1
In Python 3 keys, values and items methods of dicts return view objects. They returned lists back in Python 2. The main difference is views don't store all items in memory, but yield them as long as they are requested. It works just fine as long as you are trying to iterate over keys (which you usually are), but you can't access elements by index anymore.

TypeError: 'dict_keys' object does not support indexing

You can argue that you don't really need indexing keys since their order is random, but it's not completely true. First of all, d.keys()[0] can be a proper way to get any key (use next(d.keys()) in Python 3). Second, since Python 3.6 dicts are insertion ordered in CPython and that will be a language feature since Python 3.7.
👍2
Шаблоны Django: реализация настраиваемых тегов и фильтров.

Шаблоны Django помогают вам управлять HTML вашего веб-приложения. Шаблоны используют мини-язык с переменными, тегами и фильтрами. Вы можете условно включать блоки, создавать циклы и изменять переменные перед их отображением. Django поставляется с большим количеством встроенных тегов и фильтров, но что если их недостаточно? В таком случае, напишите свои собственные! В этом уроке рассказывается о том, как написать собственные пользовательские теги и фильтры для шаблона Django.

https://realpython.com/django-template-custom-tags-filters/
👍2
👋 Мы — команда айтишников. В текущих условиях компания не может работать как работала, и мы решили переехать всей командой.

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

👨‍💻 А вообще, мы HR-IT-чувачки (то есть без лишней скромности профи в сфере трудоустройства) и сейчас готовим новый проект: будем помогать айтишникам организовать переезд и устроиться на работу в валюте. И ещё сверху грант будем давать💰

👉 Что для этого нужно? Пока что — присоединиться к каналу RelocationDev и следить за новостями😉 Скоро обо всём расскажем — в мельчайших подробностях.
👎21👍5
Операторы 'is' и '==' в Python


В Python есть два похожих оператора, предназначенных для сравнения объектов. Эти оператор is и ==. Их часто путают, потому они одинаково сравнивают типы данных intи string:

Подробнее
👍18
Уроки по Django REST Framework

#1. Django REST Framework - что это такое
#2. Установка Django Rest Framework
#3. Базовый класс APIView для представлений
#4. Введение в сериализацию. Класс Serializer
#5. Методы save(), create() и update() класса Serializer
#6. Класс ModelSerializer и представление ListCreateAPIView
#7. Представления UpdateAPIView и RetrieveUpdateDestroyAPIView
#8. Viewsets и ModelViewSet
#9. Роутеры: SimpleRouter и DefaultRouter
#10. Ограничения доступа (permissions)
#11. Авторизация и аутентификация. Session-based authentication
#12. Аутентификация по токенам. Пакет Djoser
#13. Идея авторизации по JWT-токенам
#14. Делаем авторизацию по JWT-токенам
#15. Добавляем пагинацию (pagination)
👍16
Блочная сортировка в Python

В этом руководстве мы рассмотрим теорию и практическую реализацию блочной сортировки в Python.

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

Подробнее
👍11🔥3
Forwarded from Python академия
Модуль sys

Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно завершить работу скрипта, узнать вес объекта, получить пути к библиотекам, узнать операционную систему, узнать кодировку файлов по умолчанию и многое другое.

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

Я перечислил самые полезные функции, остальное всегда можно прочитать в документации (да, её стоит читать) или загуглить.

Подписывайтесь на канал 👉@pythonofff
👍6
If you want to catch both IndexError and KeyError, you may and should use LookupError, their common ancestor. It proved to be useful while accessing complex nested data:

try:
db_host = config['databases'][0]['hosts'][0]
except LookupError:
db_host = 'localhost'
👍11
Python 3 allows you to make some function arguments keyword-only, meaning they must be passed as (arg=value) rather than just (value).

It may be useful to prevent function calls like this: grep(text, pattern, True, False, True), where True, False, True actually means ignore case, don't invert match, pattern is Perl regexp. It would be nice to force the only reasonable form of this call:

grep(text, pattern,
ignore_case=True,
perl_regexp=True)


To achieve this result you should place the keyword-only arguments after varargs argument (aka *args):

def grep(
text, pattern, *args,
ignore_case=False,
invert_match=False,
perl_regexp=False,
):
pass


If you don't need *args (like in the example), just replace it with a bare asterisk:

def grep(
text, pattern, *,
ignore_case=False,
invert_match=False,
perl_regexp=False,
):
pass
👍7
Полезный совет: учите Linux

Мы публикуем новости и статьи из мира Linux

Дерзайте: https://t.me/linux_sup
Чтение и запись файлов MS Word с помощью модуля Python-Docx

В этой статье вы узнаете, как в Python считывать и записывать файлы MS Word.
Существует несколько библиотек, которые можно использовать для чтения и записи в Python файлов MS Word. Мы будем использовать модуль python-docx .
Подробнее
👍8🔥1