ch
Feedback
Pythoner

Pythoner

前往频道在 Telegram

Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode

显示更多
6 791
订阅者
+124 小时
-97
-3830
帖子存档
photo content

➡️Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. использование функций, которые поддерж
➡️Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. использование функций, которые поддерживают операции над векторами. ⬆️Вообще лучший способ ускорить любой цикл – это отказаться от него. В примере выше для работы с функцией my_func мы могли бы вызвать ее в цикле для каждого элемента списка, но гораздо проще использовать vectorize. ➡️По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению. 🐍Pythoner

➡️Для присвоения значения любой переменной среды используется функция setdefault(). ⬆️Давайте напишем код, чтобы с помощью фу
➡️Для присвоения значения любой переменной среды используется функция setdefault(). ⬆️Давайте напишем код, чтобы с помощью функции setdefault() изменить значение переменной DEBUG на True (по умолчанию установлено False). После установки значения мы проверим его функцией get(). ➡️Если мы сделали всё правильно, выведется сообщение «Режим отладки включен», в противном случае – «Режим отладки выключен». 🐍Pythoner

🔎SQLAlchemy - это популярная библиотека для работы с базами данных в Python. Она предоставляет удобные инструменты для созда
🔎SQLAlchemy - это популярная библиотека для работы с базами данных в Python. Она предоставляет удобные инструменты для создания, изменения и управления базами данных с помощью объектно-реляционного отображения (ORM). ➡️Создание моделей данных Первый шаг в создании базы данных с использованием SQLAlchemy - это определение моделей данных. Модель данных - это класс, который описывает структуру таблицы в базе данных. Каждый атрибут класса представляет собой столбец в таблице, а каждый экземпляр класса - строку в таблице. Например, допустим, мы хотим создать базу данных для хранения информации о пользователях. Мы можем создать класс User, который будет представлять каждого пользователя в базе данных. В этом классе мы определим атрибуты, такие как id, name и email, которые будут соответствовать столбцам в таблице. ➡️Создание таблицы в базе данных После определения моделей данных мы можем создать таблицы в базе данных. SQLAlchemy предоставляет метод create_all(), который автоматически создает все таблицы, определенные в моделях данных. ➡️Пример:
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String

# Создание движка базы данных
engine = create_engine('sqlite:///mydatabase.db')

# Создание сессии
Session = sessionmaker(bind=engine)
session = Session()

# Создание базовой модели
Base = declarative_base()

# Определение модели данных
class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String)
    email = Column(String)

# Создание таблиц
Base.metadata.create_all(engine) 
🐍Pythoner

🔎Флаг явного преобразования используется для преобразования значения поля format перед его непосредственным форматированием.
🔎Флаг явного преобразования используется для преобразования значения поля format перед его непосредственным форматированием. ➡️Это поле можно использовать для переопределения поведения format для какого либо конкретного типа и форматирования значения. В настоящее время распространены два явных флага преобразования:
!r – преобразует значение в строку, используя функцию repr()
!s – преобразует значение в строку, используя функцию str()
⬆️В примере на фото, в случае с флагом !r строка 'Hello' будет напечатана с кавычками в поле шириной не менее 20 символов, а в случае с флагом !s – без кавычек (в более удобном для чтения виде). 🐍Pythoner

photo content

➡️При создании списка, в памяти резервируется пустая область. С одной стороны, это ничем не отличается от создания любого дру
➡️При создании списка, в памяти резервируется пустая область. С одной стороны, это ничем не отличается от создания любого другого типа данных, но разница в том, что содержимое list может меняться 🐍Pythoner

➡️Этот фрагмент кода позволяет принимать сразу несколько значений вводимых данных, которые разделены пробелами. Он пригодится
➡️Этот фрагмент кода позволяет принимать сразу несколько значений вводимых данных, которые разделены пробелами. Он пригодится при решении задач на соревнованиях по программированию. 🐍Pythoner

➡️Метод pop() случайным образом удаляет элемент из множества и возвращает удаленный элемент. Если в множестве отсутствуют эле
➡️Метод pop() случайным образом удаляет элемент из множества и возвращает удаленный элемент. Если в множестве отсутствуют элементы, выдается TypeError. 🐍Pythoner

➡️Можно использовать умножение (*) со строками или списками; умножать их можно любое количество раз. ⬆️В примере на фото стро
➡️Можно использовать умножение (*) со строками или списками; умножать их можно любое количество раз. ⬆️В примере на фото строка и список будут повторятся 3 раза:
#abcdabcdabcd
Интересным вариантом может быть определение списка с постоянным значением, скажем, ноль. 🐍Pythoner

Работаете на Python? Хотите овладеть созданием веб-приложений с использованием Django? Ждём вас на открытом практическом урок
Работаете на Python? Хотите овладеть созданием веб-приложений с использованием Django? Ждём вас на открытом практическом уроке «Введение в Django REST API» от OTUS, где мы: — познакомимся с основой работы с Django и его ролью в веб-разработке; — разберем Views в Django; — изучим Middleware и их использование для дополнительной обработки запросов и ответов; — научимся разрабатывать RESTful API с помощью Django REST Framework. Спикер Валентин Шилин — старший программист и аналитик данных в зарубежной компании, опытный преподаватель. Встречаемся 16 июля в 20:00 мск в преддверии старта курса «Python Developer. Professional». Все участники вебинара получат специальную цену на обучение. 🔴 Регистрируйтесь прямо сейчас, чтобы не пропустить бесплатный урок: https://otus.pw/mIKo/?erid=LjN8KRWjz

➡️В мире Python есть такая штука — str.join(). Это как волшебная палочка, которая соединяет слова, фразы или элементы списка
➡️В мире Python есть такая штука — str.join(). Это как волшебная палочка, которая соединяет слова, фразы или элементы списка в одну большую строку. Представьте себе, что вы устраиваете вечеринку и хотите объединить всех друзей в круг. str.join() — это как магия, которая собирает всех вместе! ➡️Давайте посмотрим, как это работает на практике:
# Допустим, у нас есть список слов
words = ["Привет", "мир", "я", "Python"]

# И мы хотим объединить их в предложение
sentence = ' '.join(words)
print(sentence)
⬆️В результате этого кода мы получим строку: "Привет мир я Python". ➡️Как это работает? join() берет список (words в нашем случае) и использует пробел ' ' в качестве "клея", чтобы соединить все слова в одну строку. В результате каждый элемент списка становится частью большой строки, разделенной пробелами или любым другим символом, который мы укажем перед join(). ➡️Еще один пример:
users = ["RimMirK", "Anuke", "compuser"]

result = ', '.join(users)
print(result) # "RimMirK, Anuke, compuser"
⬆️Тут мы соединили пользователей с через запятую 🐍Pythoner

➡️Открытие изображения Первая команда, которую мы рассмотрим, это открытие изображения. С помощью функции open() из библиотек
➡️Открытие изображения Первая команда, которую мы рассмотрим, это открытие изображения. С помощью функции open() из библиотеки PIL вы можете загрузить изображение из файла и сохранить его в переменную. Например, следующий код загрузит изображение с названием "image.jpg":
from PIL import Image

image = Image.open("image.jpg")
После выполнения этого кода, изображение будет загружено и готово к дальнейшей обработке. ➡️Изменение размера изображения Вторая команда, которую мы рассмотрим, это изменение размера изображения. Библиотека PIL предоставляет функцию resize(), которая позволяет изменять размер изображения. Например, следующий код изменит размер изображения до 500 пикселей по ширине и 300 пикселей по высоте:
resized_image = image.resize((500, 300))
Вы можете указать любые значения для ширины и высоты в пикселях, чтобы получить нужный размер изображения. ➡️Сохранение изображения Третья команда, которую мы рассмотрим, это сохранение изображения. После выполнения всех необходимых операций с изображением, вы можете сохранить его в файл с помощью функции save(). Например, следующий код сохранит измененное изображение в файл с названием "resized_image.jpg":
resized_image.save("resized_image.jpg")
Вы также можете указать другой формат файла, добавив соответствующее расширение к названию файла. 🐍Pythoner

Разбор Я думаю, что почти все из вас работали/знают, как работать с файловой системой в Python. Фишка этой задачи в том, что сперва мы создаем файл, куда закидываем текст Ben. Вторым этапом идет добавление (потому что буква 'a') к уже существующему слову Ben слова Big —> BenBig. Ну а далее мы открываем опять файл на запись через 'w', что означает, что ВСЕ данные в файле будут перезаписаны. —> BenBig удалится, а Moon появится. Как результат, при чтении мы получим просто слово Moon.

Что выдаст код выше❔
Anonymous voting

photo content

➡️Функция all в Python Функция all принимает на вход итерируемый объект (например, список) и возвращает True, если все его эл
➡️Функция all в Python Функция all принимает на вход итерируемый объект (например, список) и возвращает True, если все его элементы являются истинными (или, если итерируемый объект пустой). Например:
numbers = [1, 2, 3, 4]
print(all(numbers))  # Выводит: True
⬆️В этом примере функция all вернула True, потому что все числа в списке numbers являются истинными (то есть, не равны нулю). ➡️Функция any в Python Функция any, как и all, принимает на вход итерируемый объект, но возвращает True, если хоть один из его элементов является истинным. Если итерируемый объект пустой, функция any возвращает False. Например:
numbers = [0, 0, 1, 0]
print(any(numbers))  # Выводит: True
⬆️В этом случае функция any вернула True, потому что в списке numbers было хотя бы одно истинное значение (1). ➡️Использование all и any вместе Функции all и any можно использовать вместе, чтобы проверить сложные условия. Например, мы можем проверить, все ли элементы в списке положительные и есть ли среди них хоть одно четное число:
numbers = [1, 2, 3, 4]
print(all(num > 0 for num in numbers) and any(num % 2 == 0 for num in numbers))  # Выводит: True
⬆️В этом примере функция all вернет True, если все числа в списке будут положительными, а функция any вернет True, если среди чисел будет хотя бы одно четное. 🐍Pythoner

➡️Перед тем, как сравнивать два элемента списка к ним применялась функция prepare_item, которая меняла знак у стоимости (функ
➡️Перед тем, как сравнивать два элемента списка к ним применялась функция prepare_item, которая меняла знак у стоимости (функция применяется ровно по одному разу к каждому элементу. В результате при одинаковом первом значении сортировка по второму происходила в обратном порядке. ➡️Чтобы не плодить утилитарные функции, вместо использования сторонней функции, того же эффекта можно добиться с использованием лямбда-функции. 🐍Pythoner

photo content

Разбор Мы рандомим букву среди строки, но среди какой? Сначала мы берем нулевой элемент списка - это и есть наша строка. А после, мы делаем выбор по индексу 1 —> получаем строку, которая состоит из 1-ого символа, который и рандомим) Это символ -> "1" Проверка isnumeric чекает на то, является ли это числом —> да. Значит if сработает и выдаст True