textwrap — Text wrapping and filling — Python 3.10.4 documentation
https://docs.python.org/3/library/textwrap.html
https://docs.python.org/3/library/textwrap.html
Python documentation
textwrap — Text wrapping and filling
Source code: Lib/textwrap.py The textwrap module provides some convenience functions, as well as TextWrapper, the class that does all the work. If you’re just wrapping or filling one or two text st...
Forwarded from Инжиниринг Данных (Dmitry)
Простая задачка - прочитать матрицу по часовой стрелке. Даже есть решение, и не одно, а много. Задачка типа Leetcode. Но мозг со скрежетом решает такие вещи🦥
Есть интересный сайт - https://pythontutor.com/ там можно посмотреть пошаговое выполнение программы, как на картинке.
Есть интересный сайт - https://pythontutor.com/ там можно посмотреть пошаговое выполнение программы, как на картинке.
Forwarded from Инжиниринг Данных (Dmitry)
Онлайн книга - Efficient Python Tricks and Tools for Data Scientists (написанная в git). В книге много примеров.
The goal of this book is to spread the awareness of efficient ways to do Python. They include:
- efficient methods and libraries to work with iterator, dictionary, function, and class
- efficient methods to work with popular data science libraries such as pandas and NumPy
- efficient tools to incorporate in a data science project
- efficient tools to incorporate in any project
- efficient tools to work with Jupyter Notebook.
The goal of this book is to spread the awareness of efficient ways to do Python. They include:
- efficient methods and libraries to work with iterator, dictionary, function, and class
- efficient methods to work with popular data science libraries such as pandas and NumPy
- efficient tools to incorporate in a data science project
- efficient tools to incorporate in any project
- efficient tools to work with Jupyter Notebook.
Forwarded from rpuropuu [Greeg'O'Rii']
А я устал от курсов по питону. Начал читать Лутца. Чет после курсов все время все забываю.
Forwarded from Freaking Mind
Но лучше уж fluent python почитать мне кажется
Forwarded from Инжиниринг Данных (Dmitry)
Amazon_SQL_and_Python_Task.pdf
79 KB
Phone Screening из Amazon - 2 задачки SQL + 1 Python.
Forwarded from Big Data Science [RU]
🌞Разработка на Python по 12 принципам SaaS c библиотекой Python-dotenv
Разработчики ML-моделей и аналитики данных не всегда чисто пишут код, как профессиональные программисты. Улучшить качество кода поможет простая методология разработки веб-приложений или SaaS, которая рекомендует:
• использовать декларативные форматы для автоматизации настройки, чтобы сократить время и силы новых разработчиков, присоединяющихся к проекту;
• иметь чистый контракт с базовой операционной системой, обеспечивающий максимальную переносимость между средами выполнения;
• запускать развертывания на современных облачных платформах, избавляя от необходимости администрирования серверов и систем;
• сокращать расхождения между разработкой и производством, обеспечивая непрерывное развертывание для максимальной гибкости;
• масштабироваться без существенных изменений в инструментарии, архитектуре или методах разработки.
Для реализации этих идей SaaS предлагает строить приложения по 12 принципам:
1. Одна кодовая база отслеживается в системе контроля версий, множество развертываний
2. Явно объявить и изолировать зависимости
3. Хранить конфигурацию в среде
4. Относиться к вспомогательным сервисам как к присоединенным ресурсам
5. Строго разделять этапы сборки и запуска
6. Исполнять приложение как один или несколько stateless-процессов
7. Экспортировать сервисы через привязку к порту
8. Обеспечивать параллелизм через масштабирование с помощью модели процесса
9. Максимальная надежность благодаря быстрому запуску и плавному завершению работы
10. Переносимость и похожесть сред от разработки до производства через тестовую
11. Логировать, чтобы рассматривать журналы как потоки событий
12. Выполнять задачи администрирования/управления как одноразовых процессов
Реализовать все это для Python-программы поможет открытая библиотека Python-dotenv. Она считывает пары ключ-значение из файла .env и может устанавливать их как переменные среды. Если приложение берет конфигурацию из переменных среды, запуск его в процессе разработки не очень практичен, т.к. разработчику нужно установить эти переменные среды самостоятельно. Добавив Python-dotenv в свое приложение, можно упростить процесс разработки. Библиотека сама загрузит конфигурацию из файла .env, оставаясь при этом настраиваемым через среду.
Также библиотека может загрузить конфигурацию без изменения среды, распарсить конфигурацию как поток и загрузить файлы .env в IPython. Инструмент также имеет CLI-интерфейс, чтобы манипулировать файлом .env, не открывая его вручную.
https://github.com/theskumar/python-dotenv
Разработчики ML-моделей и аналитики данных не всегда чисто пишут код, как профессиональные программисты. Улучшить качество кода поможет простая методология разработки веб-приложений или SaaS, которая рекомендует:
• использовать декларативные форматы для автоматизации настройки, чтобы сократить время и силы новых разработчиков, присоединяющихся к проекту;
• иметь чистый контракт с базовой операционной системой, обеспечивающий максимальную переносимость между средами выполнения;
• запускать развертывания на современных облачных платформах, избавляя от необходимости администрирования серверов и систем;
• сокращать расхождения между разработкой и производством, обеспечивая непрерывное развертывание для максимальной гибкости;
• масштабироваться без существенных изменений в инструментарии, архитектуре или методах разработки.
Для реализации этих идей SaaS предлагает строить приложения по 12 принципам:
1. Одна кодовая база отслеживается в системе контроля версий, множество развертываний
2. Явно объявить и изолировать зависимости
3. Хранить конфигурацию в среде
4. Относиться к вспомогательным сервисам как к присоединенным ресурсам
5. Строго разделять этапы сборки и запуска
6. Исполнять приложение как один или несколько stateless-процессов
7. Экспортировать сервисы через привязку к порту
8. Обеспечивать параллелизм через масштабирование с помощью модели процесса
9. Максимальная надежность благодаря быстрому запуску и плавному завершению работы
10. Переносимость и похожесть сред от разработки до производства через тестовую
11. Логировать, чтобы рассматривать журналы как потоки событий
12. Выполнять задачи администрирования/управления как одноразовых процессов
Реализовать все это для Python-программы поможет открытая библиотека Python-dotenv. Она считывает пары ключ-значение из файла .env и может устанавливать их как переменные среды. Если приложение берет конфигурацию из переменных среды, запуск его в процессе разработки не очень практичен, т.к. разработчику нужно установить эти переменные среды самостоятельно. Добавив Python-dotenv в свое приложение, можно упростить процесс разработки. Библиотека сама загрузит конфигурацию из файла .env, оставаясь при этом настраиваемым через среду.
Также библиотека может загрузить конфигурацию без изменения среды, распарсить конфигурацию как поток и загрузить файлы .env в IPython. Инструмент также имеет CLI-интерфейс, чтобы манипулировать файлом .env, не открывая его вручную.
https://github.com/theskumar/python-dotenv
GitHub
GitHub - theskumar/python-dotenv: Reads key-value pairs from a .env file and can set them as environment variables. It helps in…
Reads key-value pairs from a .env file and can set them as environment variables. It helps in developing applications following the 12-factor principles. - theskumar/python-dotenv
Forwarded from Datalytics
Интересная статья про разбор преимуществ языка R перед Python для задач анализа данных и data science
Основная мысль статьи, как мне кажется, вертится вокруг того, что R изначально был задуман как язык для различных манипуляций с данными, в итоге в нём предусмотрены необходимые типы данных, векторизация, удобная работа с табличными данными, пайплайны обработки данных и многое другое. В Python это всё тоже есть, но в виде «наворачиваемых» сверху пакетов, таких как numpy и pandas, но им неминуемо приходится адаптироваться к ООП-шной архитектуре Python, от чего возникает ряд решений, которые кто-то может назвать костыльными
Лично для меня Python всё-таки остаётся основным языком в анализе данных, так как уже слишком много времени и ресурсов затрачено на то, чтобы его изучить. Но для кого-то эта статья может быть хорошим набором аргументов для того, чтобы изучить R
https://habr.com/ru/post/670250/
Основная мысль статьи, как мне кажется, вертится вокруг того, что R изначально был задуман как язык для различных манипуляций с данными, в итоге в нём предусмотрены необходимые типы данных, векторизация, удобная работа с табличными данными, пайплайны обработки данных и многое другое. В Python это всё тоже есть, но в виде «наворачиваемых» сверху пакетов, таких как numpy и pandas, но им неминуемо приходится адаптироваться к ООП-шной архитектуре Python, от чего возникает ряд решений, которые кто-то может назвать костыльными
Лично для меня Python всё-таки остаётся основным языком в анализе данных, так как уже слишком много времени и ресурсов затрачено на то, чтобы его изучить. Но для кого-то эта статья может быть хорошим набором аргументов для того, чтобы изучить R
https://habr.com/ru/post/670250/
Хабр
Кто за всех решил, что python удобен для «гражданской» аналитики?
«Гарри Поттер и философский камень», (2001) ИТ-шником (программистом) нынче быть привлекательно. Дата саентистом тоже неплохо. Создаются и множатся курсы. Только вот они все однобокие. Несмотря на...
Forwarded from Аналитика данных / Data Study
Библиотеки Python для работы с базами данных и SQL-запросами
1. sqlite3
Библиотека позволяет работать с базами данных SQLite, которые записывают и читают данные с файлов, а значит пользователю не нужно устанавливать сервер для БД, что очень удобно)
2. psycopg2
Модуль для работы с базами данных PostgreSQL. Также позволяет все основные функции с базой данных: работа с таблицами, написание запросов и т.д.
3. mysql-connector-python
Как уже понятно из названия, модуль позволяет подключаться к БД MySQL) Включает в себя все те же функции, что и описанные выше модули. Подробная документация доступна по ссылкам в названии модулей
4. pymssql
Модуль позволяет подключаться к БД Microsoft SQL Server
5. SQLAlchemy
Алхимия при работе с базами данных из python) Библиотека позволяет подключаться к различным БД. Есть множество функций: создание/изменение/удаление таблиц, извлечение/вставка данных, написание запросов, изменение данных. Библиотека позволяет работать с БД с помощью объектно-ориентированного кода, не используя при этом SQL
6. PandaSQL
Модуль позволяет расширить функционал pandas и писать SQL запросы прямо к датафреймам. Как вариант использования модуля с другими библиотеками, после подключения к БД и извлечения данных, к датафрейму можно писать запросы как будто бы к обычной таблице в БД, не используя синтаксис pandas
1. sqlite3
Библиотека позволяет работать с базами данных SQLite, которые записывают и читают данные с файлов, а значит пользователю не нужно устанавливать сервер для БД, что очень удобно)
2. psycopg2
Модуль для работы с базами данных PostgreSQL. Также позволяет все основные функции с базой данных: работа с таблицами, написание запросов и т.д.
3. mysql-connector-python
Как уже понятно из названия, модуль позволяет подключаться к БД MySQL) Включает в себя все те же функции, что и описанные выше модули. Подробная документация доступна по ссылкам в названии модулей
4. pymssql
Модуль позволяет подключаться к БД Microsoft SQL Server
5. SQLAlchemy
Алхимия при работе с базами данных из python) Библиотека позволяет подключаться к различным БД. Есть множество функций: создание/изменение/удаление таблиц, извлечение/вставка данных, написание запросов, изменение данных. Библиотека позволяет работать с БД с помощью объектно-ориентированного кода, не используя при этом SQL
6. PandaSQL
Модуль позволяет расширить функционал pandas и писать SQL запросы прямо к датафреймам. Как вариант использования модуля с другими библиотеками, после подключения к БД и извлечения данных, к датафрейму можно писать запросы как будто бы к обычной таблице в БД, не используя синтаксис pandas
Forwarded from Виталий Кулиев
YouTube
ТОП функций в стандартной библиотеке python
В этом видео сделал обзор самых часто используемых функций в стандартной библиотеке python.
Таймкоды:
0:00 python datetime
1:03 python random
2:02 python json
2:52 python math
3:10 python os
4:11 python re
4:35 python time
5:09 python sqlite
5:31 python…
Таймкоды:
0:00 python datetime
1:03 python random
2:02 python json
2:52 python math
3:10 python os
4:11 python re
4:35 python time
5:09 python sqlite
5:31 python…
Forwarded from Библиотека питониста | Python, Django, Flask
Realpython
Python News: What's New From May 2022 – Real Python
The first days of May 2022 were the last days of this year's PyCon US event. Just before the PyCon conference, Python developers gathered for the Python Language Summit. The coverage of both Python events is online now. The month of May also had two exciting…
Forwarded from IT Chats 🌍
🌳 Python
@ru_python @propython
@rudepython @pymentor
@python_scripts @chatpython
🌿 Начинающим
@pythonstepikchat
@begeekprogramming
@ru_python_beginners
@tkhirianov_python_2019
@python_noobs @python_for_dummies
🌿 Web
@scrapy_python
@django_ukraine
@django_framework
@pydjango @ru_flask
@fastapi_ru @aiohttp_ru
🌿 Разное
@sqlalchemy_help
@micropython_faq_ru
@ru_pyqt @pydata_chat
👨🏼💻 Работа
@python_scripts_hr
@python_jobs @django_jobs
@ru_python @propython
@rudepython @pymentor
@python_scripts @chatpython
🌿 Начинающим
@pythonstepikchat
@begeekprogramming
@ru_python_beginners
@tkhirianov_python_2019
@python_noobs @python_for_dummies
🌿 Web
@scrapy_python
@django_ukraine
@django_framework
@pydjango @ru_flask
@fastapi_ru @aiohttp_ru
🌿 Разное
@sqlalchemy_help
@micropython_faq_ru
@ru_pyqt @pydata_chat
👨🏼💻 Работа
@python_scripts_hr
@python_jobs @django_jobs
Forwarded from Python Skills 🐍
Добавляем классу большую функциональность
Декоратор
Методы класса привязаны к самому классу, а не его экземпляру. Они могут менять состояние класса, что отразится на всех объектах этого класса, но не могут менять конкретный объект.
Проще говоря,
#oop #classmethod
Декоратор
@classmethod
— это метод, который получает класс в качестве параметра, который принято обозначать как cls
. Он указывает на класс ToyClass, а не на объект этого класса. Методы класса привязаны к самому классу, а не его экземпляру. Они могут менять состояние класса, что отразится на всех объектах этого класса, но не могут менять конкретный объект.
Проще говоря,
@classmethod
— это обычный метод класса, имеющий доступ ко всем атрибутам класса, через который он был вызван.#oop #classmethod
Forwarded from Python Skills 🐍
Наиболее частый элемент в списке
Это самый полезный лайфхак для поиска наиболее часто встречающегося элемента в списке. Представьте, что у вас есть список с кучей данных, и вам нужно найти в нем элемент с максимальной частотой употребления.
Большинство прибегает к использованию циклов для решения этой проблемы. Но вы можете упростить себе задачу, применив несколько встроенных функций.
Это самый полезный лайфхак для поиска наиболее часто встречающегося элемента в списке. Представьте, что у вас есть список с кучей данных, и вам нужно найти в нем элемент с максимальной частотой употребления.
Большинство прибегает к использованию циклов для решения этой проблемы. Но вы можете упростить себе задачу, применив несколько встроенных функций.
Forwarded from Python Skills 🐍
Превью из длинного текста
Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста, например, для сайта. Первое, что приходит на ум – использовать слайсинг строк.
Но, как видите, текст оборвался на полуслове, поэтому такой вариант отпадает. Такую проблему хорошо решает метод
Первым аргументом передается строка, вторым указываем количество символов, которое должен содержать результат. Также третьим аргументом можно передать заготовку, которая будет вставляться в конце обрезанной строки.
#строки #textwrap
Допустим, у нас есть какой-то длинный текст в виде строки и надо сделать превью этого текста, например, для сайта. Первое, что приходит на ум – использовать слайсинг строк.
Но, как видите, текст оборвался на полуслове, поэтому такой вариант отпадает. Такую проблему хорошо решает метод
shorten
из модуля textwrap
. Первым аргументом передается строка, вторым указываем количество символов, которое должен содержать результат. Также третьим аргументом можно передать заготовку, которая будет вставляться в конце обрезанной строки.
#строки #textwrap