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, а также построение простейших графиков.
Forwarded from Python Lounge: работа и стажировки для программистов
Анализ данных с помощью pandas.
Часть 3: объединение и группировка данных
Эта часть показывает способы группировки, объединения и дополнения данных.
Часть 3: объединение и группировка данных
Эта часть показывает способы группировки, объединения и дополнения данных.
Forwarded from Python Lounge: работа и стажировки для программистов
Анализ данных с помощью pandas.
Часть 4: объединение нескольких dataframe
В конце этой части, мы загрузим данные о погоде в Канаде за весь 2012 год, и сохраним в CSV файл.
Мы сделаем это, загрузив каждый месяц в отдельности, а затем сгруппировав все месяцы вместе.
Часть 4: объединение нескольких dataframe
В конце этой части, мы загрузим данные о погоде в Канаде за весь 2012 год, и сохраним в CSV файл.
Мы сделаем это, загрузив каждый месяц в отдельности, а затем сгруппировав все месяцы вместе.
Forwarded from Python Lounge: работа и стажировки для программистов
Анализ данных с помощью pandas.
Часть 7: работа с датами и временем
Часто данные содержат не только числовые или строковые значения, но и даты / время, причём в огромном множестве разных форматов. pandas умеет работать с датами; в этой части будет показано, как.
Часть 7: работа с датами и временем
Часто данные содержат не только числовые или строковые значения, но и даты / время, причём в огромном множестве разных форматов. pandas умеет работать с датами; в этой части будет показано, как.
Forwarded from Python Lounge: работа и стажировки для программистов
Анализ данных с помощью pandas.
Часть 8: работа с данными из базы данных SQL
До этого момента, мы получали данные только из csv файлов. Это довольно распространённый способ сохранения данных, но далеко не единственный!
Pandas может работать с данными из HTML, JSON, SQL, Excel (!!!), HDF5, Stata, и некоторых других вещей.
В этой части мы поговорим о работе с данными из баз данных SQL.
Часть 8: работа с данными из базы данных SQL
До этого момента, мы получали данные только из csv файлов. Это довольно распространённый способ сохранения данных, но далеко не единственный!
Pandas может работать с данными из HTML, JSON, SQL, Excel (!!!), HDF5, Stata, и некоторых других вещей.
В этой части мы поговорим о работе с данными из баз данных SQL.
Forwarded from Python Lounge: работа и стажировки для программистов
Автопостинг c ВК в телеграм
По просьбе одного из подписчиков нашего канала мы приготовили для вас статью о том, как же осуществить автопостинг с ВК в телеграм.
По просьбе одного из подписчиков нашего канала мы приготовили для вас статью о том, как же осуществить автопостинг с ВК в телеграм.
Forwarded from Python Lounge: работа и стажировки для программистов
Нахождение 10 наиболее частых слов на web странице
Решим небольшую задачку в данной статье.
Решим небольшую задачку в данной статье.
Forwarded from Python Lounge: работа и стажировки для программистов
HTML парсер на Python
Учитывая современное развитие Интернета, было бы кощунством не написать приложение, взаимодействующее со всемирной паутиной.
Сегодня мы напишем простенький html-парсер на Python.
Наше приложение будет читать код указанной страницы сайта и сохранять все ссылки в ней в отдельный файл.
Это приложение может помочь SEO-аналитикам и веб-разработчикам.
Учитывая современное развитие Интернета, было бы кощунством не написать приложение, взаимодействующее со всемирной паутиной.
Сегодня мы напишем простенький html-парсер на Python.
Наше приложение будет читать код указанной страницы сайта и сохранять все ссылки в ней в отдельный файл.
Это приложение может помочь SEO-аналитикам и веб-разработчикам.
Forwarded from Hello World
Что новенького?
Недавно один мой знакомый скинул мне интересный пример библиотеки, которая позволяет писать код на C прямо в функциях Python.
Либу я глянул, но мне кое-что не понравилось и поэтому я решил написать свою реализацию подобной библиотеки с использованием
Пока я ковырялся с этим, изучил практически досконально метод
✏️ Например я могу объявить одну функцию, а при ее вызове задать совсем другую логику.
Ссылка на гитхаб
Буду очень рад, если вы подпишетесь/поставите звездочку в гитхабе. Если среди вас есть опытные программисты, то не стесняйтесь вносить правки.
Недавно один мой знакомый скинул мне интересный пример библиотеки, которая позволяет писать код на C прямо в функциях Python.
Либу я глянул, но мне кое-что не понравилось и поэтому я решил написать свою реализацию подобной библиотеки с использованием
ctypes
.Пока я ковырялся с этим, изучил практически досконально метод
__call__
и понял что декорирующие классы могут очень сильно менять логику Python.✏️ Например я могу объявить одну функцию, а при ее вызове задать совсем другую логику.
Ссылка на гитхаб
Буду очень рад, если вы подпишетесь/поставите звездочку в гитхабе. Если среди вас есть опытные программисты, то не стесняйтесь вносить правки.
Forwarded from Библиотека питониста | Python, Django, Flask
Функция complex() создает комплексное число:
>>> complex(3.5,4)
(3.5+4j)
Функция eval() исполняет строку:
>>> eval("print(max(22,22.0) — min(2,3))")
20
Функция filter() отфильтровывает элементы, для которых заданное условие верно.
>>> list(filter(lambda x: x%2 == 0,[1, 2, 0, False]))
[2, 0, False]
Функция format() помогает задать формат строки:
>>> print("a = {0} but b = {1}".format(a, b))
a = 2 but b = 3
Функция hash() возвращает хэш-значение объекта:
>>> hash(3.7)
644245917
Функция hex() преобразовывает число в шестнадцатеричное число:
>>> hex(14)
"0xe"
Функция input() читает ввод и возвращает строку:
>>> input("Enter a number")
Enter a number7
"7"
Функция len() возвращает число, показывающее длину строки:
>>> len("Ayushi")
6
Функция locals() возвращает словарь с локальной таблицей имен:
>>> locals()
{"__name__": "__main__", "__doc__": None, "__package__": None, "__loader__": <class "_frozen_importlib.BuiltinImporter">, "__spec__": None, "__annotations__": {}, "__builtins__": <module "builtins" (built-in)>, "a": 2, "b": 3}
Функция open() открывает файл:
>>> file = open("tabs.txt")
>>> complex(3.5,4)
(3.5+4j)
Функция eval() исполняет строку:
>>> eval("print(max(22,22.0) — min(2,3))")
20
Функция filter() отфильтровывает элементы, для которых заданное условие верно.
>>> list(filter(lambda x: x%2 == 0,[1, 2, 0, False]))
[2, 0, False]
Функция format() помогает задать формат строки:
>>> print("a = {0} but b = {1}".format(a, b))
a = 2 but b = 3
Функция hash() возвращает хэш-значение объекта:
>>> hash(3.7)
644245917
Функция hex() преобразовывает число в шестнадцатеричное число:
>>> hex(14)
"0xe"
Функция input() читает ввод и возвращает строку:
>>> input("Enter a number")
Enter a number7
"7"
Функция len() возвращает число, показывающее длину строки:
>>> len("Ayushi")
6
Функция locals() возвращает словарь с локальной таблицей имен:
>>> locals()
{"__name__": "__main__", "__doc__": None, "__package__": None, "__loader__": <class "_frozen_importlib.BuiltinImporter">, "__spec__": None, "__annotations__": {}, "__builtins__": <module "builtins" (built-in)>, "a": 2, "b": 3}
Функция open() открывает файл:
>>> file = open("tabs.txt")
Forwarded from Библиотека питониста | Python, Django, Flask
12 марта с 19:00 до 22:00 митап для разработчиков Java и Python в #ITX5
Слушаем классные доклады и обсуждаем последние тренды. Темы докладов:
⬥ О чём мечтают Java-роботы, глядя на Python
⬥ AOP – альтернативный подход к объектам
⬥ Чистая архитектура в среде изменяющихся требований
Место: БЦ «Оазис» (Коровий вал, 5). Мероприятие бесплатное, нужно лишь зарегистрироваться: https://prglb.ru/393of
Слушаем классные доклады и обсуждаем последние тренды. Темы докладов:
⬥ О чём мечтают Java-роботы, глядя на Python
⬥ AOP – альтернативный подход к объектам
⬥ Чистая архитектура в среде изменяющихся требований
Место: БЦ «Оазис» (Коровий вал, 5). Мероприятие бесплатное, нужно лишь зарегистрироваться: https://prglb.ru/393of
Forwarded from MoscowPython Conf Channel
Что такое DDD и какие инструменты в нем есть, читайте в статье, основанной на докладе Артёма Малышева на Moscow Python Conf++ 2019.
В статье обсуждаем подход DDD в Python, инструменты, подводные камни, контрактное программирование и проектирование продукта вокруг решаемой проблемы, а не используемого фреймворка. Всё, чтобы ваш проект не получился похожим на синего кита — морское животное, которое не может дышать под водой.
В статье обсуждаем подход DDD в Python, инструменты, подводные камни, контрактное программирование и проектирование продукта вокруг решаемой проблемы, а не используемого фреймворка. Всё, чтобы ваш проект не получился похожим на синего кита — морское животное, которое не может дышать под водой.
Хабр
Инструменты Domain Driven Design
Синий кит — отличный пример того, как проектирование сложного проекта пошло не по плану. Кит внешне похож на рыбу, но он млекопитающее: кормит детенышей молоком,...
Forwarded from Библиотека питониста | Python, Django, Flask
Как создать виртуальное окружение в Python и перестать думать о зависимостях
Работаете с несколькими проектами на Python? С этим руководством вы не потонете в зависимостях. Рассказываем, как работать с виртуальным окружением с помощью pipenv и Anaconda.
https://prglb.ru/3vk41
Работаете с несколькими проектами на Python? С этим руководством вы не потонете в зависимостях. Рассказываем, как работать с виртуальным окружением с помощью pipenv и Anaconda.
https://prglb.ru/3vk41