PySpark
PySpark — это Python API для Apache Spark. Он позволяет выполнять обработку больших данных в реальном времени в распределенной среде с помощью Python. Он также предоставляет оболочку PySpark для интерактивного анализа данных.
PySpark сочетает в себе удобство использования и простоту Python с мощностью Apache Spark, что позволяет обрабатывать и анализировать данные любого размера для всех, кто знаком с Python. PySpark поддерживает все функции Spark, такие как Spark SQL, DataFrames, Structured Streaming, Machine Learning (MLlib) и Spark Core.
Код с картинки создаст контекст Spark, прочитает набор данных из файла CSV с именем "data.csv" и выведет его в консоль.
#для_продвинутых
PySpark — это Python API для Apache Spark. Он позволяет выполнять обработку больших данных в реальном времени в распределенной среде с помощью Python. Он также предоставляет оболочку PySpark для интерактивного анализа данных.
PySpark сочетает в себе удобство использования и простоту Python с мощностью Apache Spark, что позволяет обрабатывать и анализировать данные любого размера для всех, кто знаком с Python. PySpark поддерживает все функции Spark, такие как Spark SQL, DataFrames, Structured Streaming, Machine Learning (MLlib) и Spark Core.
Код с картинки создаст контекст Spark, прочитает набор данных из файла CSV с именем "data.csv" и выведет его в консоль.
#для_продвинутых
👍9🏆2
Атрибут context
Атрибут
В коде на картинке функция
#для_начинающих
Атрибут
context
— это специальный атрибут исключений в Python, который содержит ссылку на исключение, которое было вызвано перед текущим исключением. Этот атрибут используется при множественном вызове исключений, чтобы предоставить контекст для текущего исключения.В коде на картинке функция
g
вызывает исключение ValueError
. Функция f
перехватывает это исключение и вызывает собственное исключение Exception
.#для_начинающих
👍15
#Вопросы_с_собеседования
В чем разница между модулем, пакетом и библиотекой?
Модуль – это просто файл Python, который предназначен для импорта в скрипты или в другие модули. Он содержит функции, классы и глобальные переменные.
Пакет – это набор модулей, которые сгруппированы вместе внутри папки для обеспечения согласованной функциональности. Пакеты могут быть импортированы точно так же, как модули. Обычно в них есть init.pyfile, который указывает интерпретатору Python обрабатывать их.
Библиотека – это набор пакетов.
В чем разница между модулем, пакетом и библиотекой?
Модуль – это просто файл Python, который предназначен для импорта в скрипты или в другие модули. Он содержит функции, классы и глобальные переменные.
Пакет – это набор модулей, которые сгруппированы вместе внутри папки для обеспечения согласованной функциональности. Пакеты могут быть импортированы точно так же, как модули. Обычно в них есть init.pyfile, который указывает интерпретатору Python обрабатывать их.
Библиотека – это набор пакетов.
👍37❤🔥1😁1
Модуль doctest
Модуль doctest — это легкий фреймворк для тестирования, который позволяет автоматизировать тестирование кода, используя его документацию. Модуль ищет в документации примеры кода, которые можно выполнить, и проверяет, соответствуют ли результаты ожидаемым.
Как использовать doctest?
Чтобы использовать
Затем, в документации вашей функции или класса, вы можете добавить примеры кода, которые хотите протестировать. Примеры должны начинаться с ключевого слова >>> и заканчиваться ожидаемым результатом.
Чтобы запустить тесты
#для_продвинутых
Модуль doctest — это легкий фреймворк для тестирования, который позволяет автоматизировать тестирование кода, используя его документацию. Модуль ищет в документации примеры кода, которые можно выполнить, и проверяет, соответствуют ли результаты ожидаемым.
Как использовать doctest?
Чтобы использовать
doctest
, необходимо импортировать его в свой код:import doctest
Затем, в документации вашей функции или класса, вы можете добавить примеры кода, которые хотите протестировать. Примеры должны начинаться с ключевого слова >>> и заканчиваться ожидаемым результатом.
Чтобы запустить тесты
doctest
, вы можете использовать функцию doctest.testmod()
. Если тесты пройдут успешно, ничего не будет напечатано. Если тесты потерпят неудачу, будет напечатано сообщение об ошибке, указывающее на причину неудачи.#для_продвинутых
👍19
CatBoost
Чтобы установить CatBoost в Python, выполните следующие действия:
Затем импортируйте библиотеку:
#для_продвинутых
CatBoost
— это библиотека градиентного бустинга на деревьях решений, разработанная Яндексом. Она использует небрежные (oblivious) деревья решений, чтобы вырастить сбалансированное дерево. Одни и те же функции используются для создания левых и правых разделений (split) на каждом уровне дерева.Чтобы установить CatBoost в Python, выполните следующие действия:
pip install catboost
Затем импортируйте библиотеку:
import catboost
#для_продвинутых
👍14❤🔥5
Интроспекция
Интроспекция — это возможность получить информацию об объектах во время выполнения программы. Это может быть полезно для различных целей, таких как проверка типа объекта, получение списка атрибутов или методов объекта, вызов методов объекта, изменение значений атрибутов объекта.
В Python есть несколько способов использовать интроспекцию. Один из способов — использовать встроенные функции type(), dir() и getattr().
#для_начинающих
Интроспекция — это возможность получить информацию об объектах во время выполнения программы. Это может быть полезно для различных целей, таких как проверка типа объекта, получение списка атрибутов или методов объекта, вызов методов объекта, изменение значений атрибутов объекта.
В Python есть несколько способов использовать интроспекцию. Один из способов — использовать встроенные функции type(), dir() и getattr().
#для_начинающих
👍20
Рефлексия
Рефлексия — это возможность программы получать доступ к своей собственной структуре и поведению во время выполнения. Это означает, что программа может получить информацию о типах объектов, именах методов, атрибутах и других свойствах.
#для_начинающих
Рефлексия — это возможность программы получать доступ к своей собственной структуре и поведению во время выполнения. Это означает, что программа может получить информацию о типах объектов, именах методов, атрибутах и других свойствах.
#для_начинающих
👍26
Функция reload()
Функция
Функция
#для_начинающих
Функция
reload()
в Python перезагружает ранее импортированный модуль. Это означает, что код модуля выполняется заново, и любые изменения в модуле становятся доступными.Функция
reload()
принимает в качестве аргумента объект модуля. Этот объект должен быть ранее импортированным модулем.#для_начинающих
👍23🤔3
Функция coerce()
Функция
Аргументы функции
Если функция
#для_начинающих
Функция
coerce()
предназначена для приведения типов двух операндов к одному типу. Она используется в основном для операций с числами, но может использоваться и для других типов.Аргументы функции
coerce()
— это два операнда, которые необходимо привести к одному типу. Функция возвращает кортеж из двух значений, первый элемент которого — это преобразованный первый операнд, а второй элемент — это преобразованный второй операнд.Если функция
coerce()
не может преобразовать один из операндов, она возвращает значение None
.#для_начинающих
👍24
Функция hex()
Функция
#для_продвинутых
Функция
hex()
в Python используется для преобразования целого числа в его шестнадцатеричное представление. Она принимает один аргумент — целое число, которое нужно превратить, и возвращает срок с его шестнадцатеричной представлением.#для_продвинутых
👍23
Функция oct()
Функция
#для_начинающих
Функция
oct()
в Python принимает один аргумент: число — целое число (двоичное, десятичное или шестнадцатеричное) или объект, который должен реализовать метод index()
для возврата целого числа. Функция возвращает строку с восьмеричным представлением числа.#для_начинающих
👍28
Функция abspath()
Функция
Функция
Если путь является относительным, то функция
Если путь является абсолютным, то функция
#для_начинающих
Функция
abspath()
возвращает абсолютный путь к указанному пути. Абсолютный путь — это путь, который начинается с корневого каталога файловой системы.Функция
abspath()
принимает в качестве аргумента путь к файлу или каталогу. Путь может быть относительным или абсолютным.Если путь является относительным, то функция
abspath()
преобразует его в абсолютный, относительно текущего рабочего каталога.Если путь является абсолютным, то функция
abspath()
возвращает его без изменений.#для_начинающих
👍17🤔1👨💻1
pathlib.PureWindowsPath()
В модуле
Аргумент
#для_начинающих
В модуле
pathlib
функция pathlib.PureWindowsPath()
используется для создания объекта пути Windows. Этот объект представляет собой путь в файловой системе Windows, но не выполняет никаких операций ввода-вывода.Аргумент
path
может быть строкой, представляющей путь Windows, или другим объектом пути, который можно привести к типу PureWindowsPath
.#для_начинающих
👍9
struct.Struct()
Модуль
Синтаксис:
Аргументы:
#для_провдинутых
Модуль
struct
позволяет преобразовывать между Python-значениями и C-структурами, представленными как объекты bytes
. Компактные форматные строки описывают предполагаемые преобразования в/из Python-значений.Синтаксис:
struct.Struct(format_string)
Аргументы:
format_string
— строка формата, описывающая структуру.#для_провдинутых
👍10
Snowballstemmer
Библиотека
Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
Библиотека
Snowballstemmer
предоставляет функциональность стемминга, то есть преобразования слов в их базовую форму. Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
Snowballstemmer
поддерживает алгоритмы стемминга для 15 языков, включая русский.*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
👍28
IceCream
В этом примере кода вывод
IceCream
— это библиотека, которая предоставляет простой и эффективный способ отладки кода. Вместо того чтобы использовать функцию print()
для отладки, вы можете использовать функцию ic()
из библиотеки IceCream
, которая позволяет вам инспектировать переменные, выражения и выполнение программы с помощью одного простого вызова функции.В этом примере кода вывод
ic|
указывает на то, что это вывод от IceCream
, а result: 6
— имя переменной и ее значение.IceCream
может быть использован в любом месте, где требуется отладка кода: веб-разработка, научные вычисления, анализ данных и т.д.👍30🏆3
Telethon
Telethon — это библиотека Python, которая позволяет вам взаимодействовать с API Telegram. Вы можете отправлять, получать или ждать новых сообщений Telegram внутри вашего Python-приложения. Вы также можете отправлять файлы контакту или группе контактов.
В этом примере мы настраиваем автоматическое отправление файлов в группу.
*Для работы этого кода вам нужно только получить ID и хэш Telegram API (что можно сделать за несколько минут).
Telethon — это библиотека Python, которая позволяет вам взаимодействовать с API Telegram. Вы можете отправлять, получать или ждать новых сообщений Telegram внутри вашего Python-приложения. Вы также можете отправлять файлы контакту или группе контактов.
В этом примере мы настраиваем автоматическое отправление файлов в группу.
*Для работы этого кода вам нужно только получить ID и хэш Telegram API (что можно сделать за несколько минут).
👍30
typing.Literal
Например,
#для_начинающих
typing.Literal
— это тип данных, который позволяет указать не просто какой-то тип вроде str
, int
или float
, а конкретное значение этого типа.Например,
Literal[42]
означает, что в качестве значения ожидается только 42. Важно, что проверяется не только равенство значения, но и его тип (например, нельзя будет использовать False
, если ожидается 0).#для_начинающих
👍20
Функция itertools.chain()
Функция
Например, код сверху объединяет две строки в одну.
#для_начинающих
Функция
itertools.chain()
в Python объединяет несколько итераторов в один. Она принимает в качестве аргумента один или несколько итераторов, и возвращает итератор, который последовательно возвращает элементы из этих итераторов.Например, код сверху объединяет две строки в одну.
#для_начинающих
👍22🔥2
Принцип открытости/закрытости (OCP)
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
#для_продвинутых
Принцип открытости/закрытости (OCP) — один из основополагающих принципов объектно-ориентированного программирования (ООП), сформулированный Бертраном Мейером. Он гласит: Программные сущности (классы, модули, функции и т. п.) должны быть открыты для расширения, но закрыты для изменения.
Иными словами код должен быть легко расширяемым для добавления новых функций или поведения. Существующий код не должен меняться при добавлении новых функций.
#для_продвинутых
👍26