PyPetka-Script 4.0.0
Русскоязычная библиотека Python с 150+ функциями для студентов и разработчиков. Упрощение работы с Python, математикой, шифрованием и алгоритмами.
License: MIT
Requires Python: >=3.6
Keywords: python, russian, education, library, students, math, cryptography, algorithms, pypetka, programming, development, tools, utilities

**PyPetka Script 4.0** - это ультимативная русскоязычная библиотека, которая переводит стандартные функции Python на русский и предоставляет более **150 готовых функций** для решения задач на контрольных, лабораторных, тестах и проектах. От базовых математических операций до сложных алгоритмов шифрования и анализа данных!

## 📦 СПОСОБЫ УСТАНОВКИ И ИСПОЛЬЗОВАНИЯ

#### ОЧЕНЬ ВАЖНО!!! Для того, чтобы каждый раз не писать `пипетка.название_модуля`, а просто `название_модуля` вам предлагается 3 варианта использования PyPetka Script:

### Вариант 1: Скачивание проекта с GitHub (рекомендуется для студентов)
1. [Скачайте проект с GitHub](https://github.com/IlyaChaek/PyPetka-Script)
2. Поместите файл `pypetka_script.py` в папку с вашим проектом
3. В своем коде пропишите:
```python
from pypetka_script import pypetka_script
```
4. Используйте функции напрямую:
```python
вывод('Вы молодец!')
```

### Вариант 2: Установка через pip (для постоянного использования)
1. Установите библиотеку:
```
pip install PyPetka-Script
```
2. Импортируйте с удобным алиасом:
```python
from pypetka_script import pypetka_script as пипетка
```
3. Используйте с префиксом:
```python
пипетка.вывод(пипетка.генератор_паролей())
```

### Вариант 3: Запуск как самостоятельный скрипт
1. Просто запустите файл:
```
python pypetka_script.py
```
2. Вы получите доступ к ИИ-ассистенту, который подскажет, какая функция реализует вашу задачу лучше

#### Важно!
Большая часть команд имеет аргумент внутри скобок, внизу вы можете увидеть, что нужно указать

#### Важно 2!
Вы можете запустить код нативно (просто запустить `pypetka_script.py`) и получить ассистента, который подскажет какая функция реализует вашу задачу лучше.
Для реализации кода используйте `from pypetka_script import pypetka_script` и ниже уже код, который вам дал ИИ ассистент в примере.

## 🎯 БЫСТРЫЙ СТАРТ

### Простейший пример:
```python
from pypetka_script import pypetka_script

# Математика
корни = решить_квадратное_уравнение(1, -3, 2)
вывод(f"Корни уравнения: {корни}")

# Генерация пароля
пароль = генератор_паролей(12)
вывод(f"Ваш пароль: {пароль}")

# Шифрование
зашифровано = шифр_цезаря("привет", 3)
расшифровано = шифр_цезаря(зашифровано, 3, 'дешифрование')
```

## 🤖 ИИ-АССИСТЕНТ

Запустите `PyPetka_AI()` для интерактивного поиска функций:
```python
# Просто запустите скрипт или вызовите:
PyPetka_AI()

# В консоли введите:
# > квадратное уравнение
# > шифр цезаря
# > сортировка массива
# > игра
```

Ассистент покажет:
- Подходящие функции
- Примеры их использования
- Краткое описание

## 📚 КАТЕГОРИИ ФУНКЦИЙ

### 🧮 **МАТЕМАТИКА** (40+ функций)

#### Арифметика и алгебра
- `сумма(*числа)` - сумма чисел
- `вычесть(*числа)` - разность чисел
- `умножить(*числа)` - произведение чисел
- `делить(a, b)` - деление с проверкой на ноль
- `факториал(n)` - факториал числа
- `квадратный_корень(x)` - квадратный корень
- `возвести_в_степень(a, b)` - возведение в степень
- `проверка_на_четность(n)` - проверка четности
- `НОД(a, b)`, `НОК(a, b)` - НОД и НОК
- `разложить_на_множители(n)` - разложение на множители

#### Уравнения и системы
- `решить_квадратное_уравнение(a, b, c)` - квадратные уравнения
- `решить_линейное_уравнение(a, b, c)` - линейные уравнения
- `решить_систему_линейных_уравнений(a1, b1, c1, a2, b2, c2)` - системы уравнений
- `решить_кубическое_уравнение(a, b, c, d)` - кубические уравнения
- `численное_дифференцирование(f, x)` - численная производная
- `численное_интегрирование(f, a, b)` - численный интеграл

#### Геометрия
- `площадь_треугольника_герон(a, b, c)` - площадь по формуле Герона
- `расстояние_между_точками(x1, y1, x2, y2)` - расстояние между точками
- `объем_сферы(r)` - объем сферы
- `площадь_поверхности_сферы(r)` - площадь сферы
- `теорема_пифагора(a, b, найти='c')` - теорема Пифагора

#### Тригонометрия
- `синус(угол, в_градусах=True)`
- `косинус(угол, в_градусах=True)`
- `тангенс(угол, в_градусах=True)`
- `арксинус(x, в_градусах=True)`
- `арккосинус(x, в_градусах=True)`
- `арктангенс(x, в_градусах=True)`
- `закон_синусов()`, `закон_косинусов()`

#### Линейная алгебра
- `создать_матрицу(строки, столбцы)` - создание матрицы
- `матричное_умножение(A, B)` - умножение матриц
- `транспонировать_матрицу(A)` - транспонирование
- `определитель(matrix)` - определитель матрицы
- `найти_обратную_матрицу(matrix)` - обратная матрица
- `найти_собственные_значения(matrix)` - собственные значения

### 🔐 **ШИФРОВАНИЕ И КРИПТОГРАФИЯ** (15+ функций)

#### Классические шифры
- `шифр_цезаря(text, сдвиг, режим='шифрование')` - шифр Цезаря
- `шифр_виженера(text, ключ, режим='шифрование')` - шифр Виженера
- `шифр_атбаш(text)` - шифр Атбаш (зеркальный)
- `шифр_плейфера(text, ключ)` - шифр Плейфера

#### Современные методы
- `md5_хеш(text)` - MD5 хеш
- `sha256_хеш(text)` - SHA256 хеш
- `sha512_хеш(text)` - SHA512 хеш
- `base64_кодирование(text)` - Base64 кодирование
- `base64_декодирование(text)` - Base64 декодирование
- `hex_кодирование(text)` - HEX кодирование
- `hex_декодирование(text)` - HEX декодирование
- `xor_шифрование(data, key)` - XOR шифрование
- `xor_расшифровка(hex_data, key)` - XOR расшифровка

#### Генераторы
- `генератор_паролей(длина=12, ...)` - генератор паролей
- `генератор_сильной_соли(длина=32)` - генератор криптографической соли
- `проверка_пароля_на_надежность(пароль)` - проверка надежности пароля

### 📊 **АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ** (30+ функций)

#### Сортировки
- `сортировка_пузырьком(arr)` - пузырьковая сортировка
- `сортировка_выбором(arr)` - сортировка выбором
- `сортировка_вставками(arr)` - сортировка вставками
- `сортировка_слиянием(arr)` - сортировка слиянием
- `сортировка_подсчетом(arr)` - сортировка подсчетом
- `быстрая_сортировка(arr)` - быстрая сортировка (QuickSort)

#### Поиск
- `бинарный_поиск(arr, target)` - бинарный поиск
- `линейный_поиск(arr, target)` - линейный поиск

#### Работа со списками
- `удалить_дубликаты(lst)` - удаление дубликатов
- `глубокое_сплющивание(lst)` - рекурсивное сплющивание
- `перестановки(lst)` - все перестановки
- `сочетания(lst, k)` - сочетания из n по k
- `декартово_произведение(*args)` - декартово произведение
- `разбить_на_чанки(lst, размер)` - разбиение на чанки
- `ротация_списка(lst, n)` - циклический сдвиг

#### Графы и алгоритмы
- `Класс Граф` - BFS, DFS, алгоритм Дейкстры
- `алгоритм_прима(граф)` - минимальное остовное дерево
- `алгоритм_флойда_уоршелла(граф)` - кратчайшие пути между всеми вершинами

### 📈 **СТАТИСТИКА И АНАЛИЗ ДАННЫХ** (15+ функций)

#### Базовая статистика
- `среднее_арифметическое(data)` - среднее значение
- `медиана_данных(data)` - медиана
- `мода_данных(data)` - мода
- `дисперсия_данных(data)` - дисперсия
- `стандартное_отклонение_данных(data)` - стандартное отклонение

#### Продвинутая статистика
- `коэффициент_вариации(data)` - коэффициент вариации
- `корреляция_пирсона(x, y)` - корреляция Пирсона
- `линейная_регрессия(x, y)` - линейная регрессия
- `найти_квантиль(data, q)` - квантиль распределения
- `гистограмма(data, bins=10)` - построение гистограммы

### 💰 **ФИНАНСОВЫЕ РАСЧЕТЫ** (10+ функций)

- `сложный_процент(сумма, ставка, лет)` - сложный процент
- `аннуитетный_платеж(кредит, ставка, лет)` - аннуитетный платеж
- `дифференцированный_платеж(кредит, ставка, лет, месяц)` - дифференцированный платеж
- `чистая_приведенная_стоимость(потоки, ставка)` - NPV
- `внутренняя_норма_доходности(потоки)` - IRR
- `срок_окупаемости(потоки)` - срок окупаемости инвестиций

### 🎮 **ИГРЫ И РАЗВЛЕЧЕНИЯ** (10+ функций)

- `угадай_число(минимум=1, максимум=100)` - угадай число
- `камень_ножницы_бумага()` - игра камень-ножницы-бумага
- `игра_в_кости()` - игра в кости
- `симулятор_лотереи(чисел=6, диапазон=49)` - симулятор лотереи

### 📁 **РАБОТА С ФАЙЛАМИ И ОС** (15+ функций)

#### Файловые операции
- `добавить_задачу_в_файл(задача, файл)` - добавление задач
- `удалить_все_задачи(файл)` - удаление всех задач
- `очистка_кода_от_дубликатов(путь)` - очистка кода от дубликатов
- `найти_дубликаты_файлов(директория)` - поиск дубликатов файлов
- `массовое_переименование(директория, шаблон, замена)` - массовое переименование

#### Форматы данных
- `чтение_json(файл)` - чтение JSON
- `запись_json(файл, данные)` - запись JSON
- `чтение_csv(файл, разделитель=',')` - чтение CSV
- `запись_csv(файл, данные, заголовки=None)` - запись CSV

### 🛠 **УТИЛИТЫ И ИНСТРУМЕНТЫ** (20+ функций)

#### Декораторы
- `@мемоизация` - кэширование результатов
- `@замер_времени` - замер времени выполнения
- `@повторить(n)` - повторение выполнения
- `@обработка_ошибок` - обработка исключений

#### Функциональное программирование
- `все(коллекция, условие)` - проверка всех элементов
- `любой(коллекция, условие)` - проверка любого элемента
- `фильтрация(список, условие)` - фильтрация списка
- `отображение(список, функция)` - применение функции к элементам
- `свертка(список, функция, начальное_значение)` - свертка списка

#### Генераторы и случайность
- `генератор_чисел(начало, конец, шаг=1)` - генерация чисел
- `случайный_элемент(список)` - случайный элемент
- `случайное_число(минимум=0, максимум=100)` - случайное число
- `перемешать_список(список)` - перемешивание списка
- `выборка(список, количество, уникальные=True)` - случайная выборка

### 🎨 **ИНТЕРФЕЙСЫ И КАЛЬКУЛЯТОРЫ**

- `калькулятор_консольный()` - консольный калькулятор
- `калькулятор_с_интерфейсом()` - графический калькулятор
- `PyPetka_AI()` - ИИ-помощник для поиска функций

### 📝 **РАБОТА СО СТРОКАМИ И ТЕКСТОМ** (15+ функций)

#### Базовые операции
- `является_палиндромом(text)` - проверка палиндрома
- `перевернуть_строку(text)` - переворот строки
- `частота_слов(text)` - частота слов в тексте
- `санитайз_строки(text)` - очистка строки
- `проверка_баланса_скобок(text)` - проверка скобок

#### Сравнение строк
- `левенштейн(s1, s2)` - расстояние Левенштейна
- `jaro_расстояние(s1, s2)` - расстояние Джаро
- `звуковой_алгоритм(text)` - алгоритм Soundex

#### Валидация
- `валидация_email(email)` - проверка email
- `проверить_ip(ip_addr)` - проверка IP адреса

## 🚀 **ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ**

### Пример 1: Решение учебных задач
```python
from pypetka_script import pypetka_script

# Математика для контрольной
корни = решить_квадратное_уравнение(1, -5, 6)
площадь = площадь_треугольника_герон(3, 4, 5)
расстояние = расстояние_между_точками(0, 0, 3, 4)

# Статистика для лабораторной
данные = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
среднее = среднее_арифметическое(данные)
медиана = медиана_данных(данные)
отклонение = стандартное_отклонение_данных(данные)
```

### Пример 2: Шифрование данных
```python
from pypetka_script import pypetka_script

# Шифрование сообщения
сообщение = "секретное сообщение"
зашифровано = шифр_цезаря(сообщение, 5)
расшифровано = шифр_цезаря(зашифровано, 5, 'дешифрование')

# Хеширование пароля
пароль = "мой_пароль_123"
хеш = sha256_хеш(пароль)
```

### Пример 3: Работа с данными
```python
from pypetka_script import pypetka_script

# Обработка списков
список = [1, 2, 2, 3, 4, 4, 4, 5]
уникальные = удалить_дубликаты(список)
отсортировано = быстрая_сортировка(список)

# Работа с файлами
задачи = ["сделать домашку", "написать код", "сдать проект"]
for задача in задачи:
    добавить_задачу_в_файл(задача)
```

## 📋 **ПОЛНЫЙ СПИСОК ФУНКЦИЙ**

Для полного списка всех 150+ функций с подробным описанием запустите ИИ-помощника:
```python
from pypetka_script import pypetka_script
PyPetka_AI()
```

И введите команду `список` или воспользуйтесь поиском по категориям.

## 🔗 **ССЫЛКИ**

- [GitHub репозиторий](https://github.com/IlyaChaek/PyPetka-Script)
- [Примеры использования на GitHub](https://github.com/IlyaChaek/PyPetka-Script/blob/main/pypetka_script/example_github.py)
- [Примеры использования на PyPi](https://github.com/IlyaChaek/PyPetka-Script/blob/main/pypetka_script/example_pypi.py)

## 📄 **ЛИЦЕНЗИЯ**

MIT License - свободное использование для учебных и коммерческих целей.

## 🙏 **БЛАГОДАРНОСТИ**

Спасибо всем, кто использует PyPetka Script для обучения и разработки! Удачи на контрольных! 🚀