Forwarded from Библиотека питониста | Python, Django, Flask
Новости PEP 614 — грамматические послабления для декораторов.
https://www.python.org/dev/peps/pep-0614/
https://www.python.org/dev/peps/pep-0614/
peps.python.org
PEP 614 – Relaxing Grammar Restrictions On Decorators | peps.python.org
Python Enhancement Proposals (PEPs)
Forwarded from Библиотека питониста | Python, Django, Flask
YouTube
What is pandas? (Introduction to the Q&A series)
pandas is a full-featured Python library for data analysis, manipulation, and visualization. This video series is for anyone who wants to work with data in Python, regardless of whether you are brand new to pandas or have some experience.
Each video will…
Each video will…
Forwarded from Библиотека питониста | Python, Django, Flask
Forwarded from Библиотека питониста | Python, Django, Flask
Хочешь стать Python-разработчиком?
Пройди бесплатный интенсив: ▶ https://clc.to/awocgA.
Почему Python — отличный выбор для начинающих?
✔ Обладает простым синтаксисом.
✔ Применим почти во всех областях разработки.
✔ Востребован на рынке труда, в том числе компаниями-гигантами (Google, Facebook, Microsoft).
🎁 На интенсиве ты создашь программу для автоматического подбора паролей. Авторы трёх лучших проектов выиграют сертификат на 30 000 рублей для обучения в онлайн-университете Skillbox.
Пройди бесплатный интенсив: ▶ https://clc.to/awocgA.
Почему Python — отличный выбор для начинающих?
✔ Обладает простым синтаксисом.
✔ Применим почти во всех областях разработки.
✔ Востребован на рынке труда, в том числе компаниями-гигантами (Google, Facebook, Microsoft).
🎁 На интенсиве ты создашь программу для автоматического подбора паролей. Авторы трёх лучших проектов выиграют сертификат на 30 000 рублей для обучения в онлайн-университете Skillbox.
Forwarded from Библиотека питониста | Python, Django, Flask
Web Scraping with Python: Collecting More Data from the Modern Web (2018)
Написав простую автоматизированную программу, вы можете запрашивать информацию с веб-серверов, и анализировать данные для получения необходимой информации. Расширенное издание этой книги не только познакомит вас с веб-скрейпингом, но и послужит практическим руководством по сбору практически всех типов данных из современного интернета.
Написав простую автоматизированную программу, вы можете запрашивать информацию с веб-серверов, и анализировать данные для получения необходимой информации. Расширенное издание этой книги не только познакомит вас с веб-скрейпингом, но и послужит практическим руководством по сбору практически всех типов данных из современного интернета.
Forwarded from Hello World
Очистка входных строковых данных
Задача очистки данных, вводимых пользователем, актуальна практически для любой программы.
📌 Иногда данные можно очистить с помощью регулярного выражения.
📌 Но в случаях, когда задача усложняется, можно применить более удачный способ её решения. Здесь пробельные символы
✏️ Это – простой пример, но мы можем его расширить, создавая таблицы переназначения символов с использованием пакета
Такой подход позволяет убирать из строк всё то, что там не нужно.
Посмотреть код
#tips
Задача очистки данных, вводимых пользователем, актуальна практически для любой программы.
📌 Иногда данные можно очистить с помощью регулярного выражения.
📌 Но в случаях, когда задача усложняется, можно применить более удачный способ её решения. Здесь пробельные символы
"\n"
и "\t"
заменяются на обычные пробелы, а символ "\r"
удаляется из строки полностью. ✏️ Это – простой пример, но мы можем его расширить, создавая таблицы переназначения символов с использованием пакета
unicodedata
и его функции combining()
.Такой подход позволяет убирать из строк всё то, что там не нужно.
Посмотреть код
#tips
Forwarded from Hello World
comp3321_red.pdf
18.5 MB
курс от АНБ по Python
В прикрепленном файле вы найдете немного отредактированную четырехсотстраничную распечатку учебного курса COMP 3321 по Python, который преподается в АНБ.
Данный курс содержит краткое введение в Python от его создателя Гвидо ван Россума и объясняет, для чего этот язык подходит лучше всего, например, для автоматизации задач, создания веб-приложений или проведения углубленных математических исследований.
В прикрепленном файле вы найдете немного отредактированную четырехсотстраничную распечатку учебного курса COMP 3321 по Python, который преподается в АНБ.
Данный курс содержит краткое введение в Python от его создателя Гвидо ван Россума и объясняет, для чего этот язык подходит лучше всего, например, для автоматизации задач, создания веб-приложений или проведения углубленных математических исследований.
Forwarded from Hello World
Объявление нескольких конструкторов в классе
Перегрузка функций – это одна из возможностей, весьма широко используемых в различных языках программирования, но не в Python.
📌 Хотя в Python нельзя перегрузить обычную функцию, можно пользоваться чем-то вроде перегрузки конструкторов с использованием методов класса.
📌 Конечно, вместо использования методов класса, можно поместить всю логику альтернативных конструкторов в
✏️ В результате может получиться рабочий код, но этот код будет тяжело читать и поддерживать. Тут можно порекомендовать поместить минимум логики в
✏️ При таком подходе в нашем распоряжении окажется чистый код, с которым удобно будет работать и автору этого кода, и тому, кто этим кодом будет пользоваться.
Посмотреть код
Перегрузка функций – это одна из возможностей, весьма широко используемых в различных языках программирования, но не в Python.
📌 Хотя в Python нельзя перегрузить обычную функцию, можно пользоваться чем-то вроде перегрузки конструкторов с использованием методов класса.
📌 Конечно, вместо использования методов класса, можно поместить всю логику альтернативных конструкторов в
__init__
и решить задачу с использованием *args
, **kwargs
и множества выражений if
.✏️ В результате может получиться рабочий код, но этот код будет тяжело читать и поддерживать. Тут можно порекомендовать поместить минимум логики в
__init__
и выполнить все операции в отдельных методах/конструкторах.✏️ При таком подходе в нашем распоряжении окажется чистый код, с которым удобно будет работать и автору этого кода, и тому, кто этим кодом будет пользоваться.
Посмотреть код
Forwarded from Hello World
Простейший парсер прокси
📌 Для реализации нам потребуется библиотека
📌 С помощью переменной
✏️ В функции grab, кроме того, можно задавать
Посмотреть код
📌 Для реализации нам потребуется библиотека
proxybroker
, и одна асинхронная функция для записи в файл.📌 С помощью переменной
limit
можно задавать количество адресов.✏️ В функции grab, кроме того, можно задавать
types=['HTTP', 'HTTPS']
Посмотреть код
Forwarded from Hello World
Параметры в iter
📌 Обычно built-in функция
📌 Однако, можно передать два параметра. В таком случае, первый параметр должен быть callable-объектом, а второй — результатом вызова первого объекта, на котором нужно остановить итерирование.
Как пример, считывание данных из файла по кускам длины 64, до первого вхождения пустой строчки.
#iter
📌 Обычно built-in функция
iter()
возвращает итератор от переданной последовательности.📌 Однако, можно передать два параметра. В таком случае, первый параметр должен быть callable-объектом, а второй — результатом вызова первого объекта, на котором нужно остановить итерирование.
Как пример, считывание данных из файла по кускам длины 64, до первого вхождения пустой строчки.
#iter
Forwarded from Библиотека питониста | Python, Django, Flask
Как подружить Python и базы данных SQL. Подробное руководство
Рассказываем, как связать Python и реляционные базы данных трёх типов: SQLite, MySQL и PostgreSQL. Зная одну библиотеку для работы с SQL, вы легко разберетесь в остальных.
https://proglib.io/p/kak-podruzhit-python-i-bazy-dannyh-sql-podrobnoe-rukovodstvo-2020-02-27
Рассказываем, как связать Python и реляционные базы данных трёх типов: SQLite, MySQL и PostgreSQL. Зная одну библиотеку для работы с SQL, вы легко разберетесь в остальных.
https://proglib.io/p/kak-podruzhit-python-i-bazy-dannyh-sql-podrobnoe-rukovodstvo-2020-02-27
Forwarded from MoscowPython Conf Channel
Мы так и не определились, считать ли Python Core-разработчиком заведующего разработкой Pytest и Hypothesis, помогите нам 🤔
В любом случаем, ждём доклад «Sufficiently Advanced Testing» с нетерпением.
🗂 Zac Hatfield-Dodds — Core-разработчик библиотеки для написания unit-тестов и мэйнтейнер Pytest. В ходе доклада Зак поделится своим мнением о современном тестировании и обсудит с гостями конференции их вопросы.
В любом случаем, ждём доклад «Sufficiently Advanced Testing» с нетерпением.
🗂 Zac Hatfield-Dodds — Core-разработчик библиотеки для написания unit-тестов и мэйнтейнер Pytest. В ходе доклада Зак поделится своим мнением о современном тестировании и обсудит с гостями конференции их вопросы.
Forwarded from Anton Ost
видимо каждый накостылил себе библиотеку для конфигурации)
https://github.com/shocking-rodents/magic-settings
https://github.com/shocking-rodents/magic-settings
GitHub
GitHub - shocking-rodents/magic-settings: Configuration manager for Python applications. Get config from yaml, environment variables…
Configuration manager for Python applications. Get config from yaml, environment variables or python modules. - shocking-rodents/magic-settings
Forwarded from Библиотека питониста | Python, Django, Flask
Realpython
Null in Python: Understanding Python's NoneType Object – Real Python
In this tutorial, you'll learn about the NoneType object None, which acts as the null in Python. This object represents emptiness, and you can use it to mark default parameters and even show when you have no result. None is a tool for doing everything with…
Forwarded from Python Academy
Находим соответствия в строках
Предположим, мы попали в ситуацию, когда нам понадобилось найти в списке слова, похожие на некую входную строку. Решить эту задачу можно с помощью built-in модуля
Данный метод ищет "наилучшие" возможные совпадения. Первый аргумент задаёт искомую строку, второй аргумент задаёт список, в котором выполняется поиск.
Также в метод можно передать необязательный аргумент
Предположим, мы попали в ситуацию, когда нам понадобилось найти в списке слова, похожие на некую входную строку. Решить эту задачу можно с помощью built-in модуля
difflib
.Данный метод ищет "наилучшие" возможные совпадения. Первый аргумент задаёт искомую строку, второй аргумент задаёт список, в котором выполняется поиск.
Также в метод можно передать необязательный аргумент
n
, который задаёт максимальное число возвращаемых совпадений.Forwarded from Python Lounge: работа и стажировки для программистов
Python позволяет перегружать множество различных операторов, и оператор shift является одним из них. Вот пример того, как создать композицию функции с помощью этого оператора. Здесь эти знаки показывают направление потока данных:
collections import deque
from math import sqrt
class Compose:
def __init__(self):
self._functions = deque()
def __call__(self, *args, **kwargs):
result = None
for f in self._functions:
result = f(*args, **kwargs)
args = [result]
kwargs = dict()
return result
def __rshift__(self, f):
self._functions.append(f)
return self
def __lshift__(self, f):
self._functions.appendleft(f)
return self
compose = Compose
sqrt_abs = (compose() << sqrt << abs)
sqrt_abs2 = (compose() >> abs >> sqrt)
print(sqrt_abs(-4)) # 2.0
print(sqrt_abs2(-4)) # 2.0
Forwarded from Python Lounge: работа и стажировки для программистов
Приветствую всех!
Сегодня мы познакомимся с историей создания Python.
Разработка языка Python была начата в конце 1980-х годов сотрудником голландского института CWI Гвидо ван Россумом.
Для распределённой ОС Amoeba требовался расширяемый скриптовый язык, и Гвидо начал писать Python на досуге, позаимствовав некоторые наработки для языка ABC (Гвидо участвовал в разработке этого языка, ориентированного на обучение программированию).
В феврале 1991 года Гвидо опубликовал исходный текст в группе новостей alt.sources.
С самого начала Python проектировался как объектно-ориентированный язык.
3 декабря 2008 года, после длительного тестирования, вышла первая версия Python 3000 (или Python 3.0, также используется сокращение Py3k).
В Python 3000 устранены многие недостатки архитектуры с максимально возможным (но не полным) сохранением совместимости со старыми версиями Python.
На сегодня поддерживаются обе ветви развития (Python 3.x и 2.x), но поддержка Python 2.7 заканчивается в 2020 году.
Итак, мы узнали на чуточку больше про Python!
Сегодня мы познакомимся с историей создания Python.
Разработка языка Python была начата в конце 1980-х годов сотрудником голландского института CWI Гвидо ван Россумом.
Для распределённой ОС Amoeba требовался расширяемый скриптовый язык, и Гвидо начал писать Python на досуге, позаимствовав некоторые наработки для языка ABC (Гвидо участвовал в разработке этого языка, ориентированного на обучение программированию).
В феврале 1991 года Гвидо опубликовал исходный текст в группе новостей alt.sources.
С самого начала Python проектировался как объектно-ориентированный язык.
3 декабря 2008 года, после длительного тестирования, вышла первая версия Python 3000 (или Python 3.0, также используется сокращение Py3k).
В Python 3000 устранены многие недостатки архитектуры с максимально возможным (но не полным) сохранением совместимости со старыми версиями Python.
На сегодня поддерживаются обе ветви развития (Python 3.x и 2.x), но поддержка Python 2.7 заканчивается в 2020 году.
Итак, мы узнали на чуточку больше про Python!
Forwarded from Python Lounge: работа и стажировки для программистов
Анализ данных с помощью pandas.
Часть 1: Чтение данных из csv файла
Продолжаем работать с pandas.
Эта часть показывает способ обработки данных, хранящихся в формате csv, а также построение простейших графиков.
Часть 1: Чтение данных из csv файла
Продолжаем работать с pandas.
Эта часть показывает способ обработки данных, хранящихся в формате csv, а также построение простейших графиков.