commit edc59e10c77d3075c85e3117f8b14033299b6092 Author: Timur Date: Sat May 30 11:53:10 2026 +0300 Initial commit: project structure and Git basics diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cf7558f --- /dev/null +++ b/.gitignore @@ -0,0 +1,29 @@ +# Виртуальное окружение +.venv/ +venv/ +env/ + +# Python +__pycache__/ +*.py[cod] +*$py.class +*.so + +# Jupyter +.ipynb_checkpoints/ + +# Данные и результаты +output.txt +*.csv +*.jpg +*.png + +# IDE +.vscode/ +.idea/ +*.swp +*.swo + +# OS +.DS_Store +Thumbs.db \ No newline at end of file diff --git a/01_git_basics/data.txt b/01_git_basics/data.txt new file mode 100644 index 0000000..b1326ad --- /dev/null +++ b/01_git_basics/data.txt @@ -0,0 +1,10 @@ +python это мощный язык программирования +git управляет версиями кода +tcp гарантирует доставку данных +udp работает быстрее но без гарантий +jupyterlab удобен для анализа данных +pandas обрабатывает таблицы +нейросети учатся на примерах +виртуальные окружения изолируют зависимости +машинное обучение меняет мир +спектральная кластеризация сегментирует изображения \ No newline at end of file diff --git a/01_git_basics/process_data.py b/01_git_basics/process_data.py new file mode 100644 index 0000000..7bb66ee --- /dev/null +++ b/01_git_basics/process_data.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +""" +Скрипт обработки текстовых данных: +- Чтение из data.txt +- Преобразование в верхний регистр +- Сортировка по алфавиту +- Запись в output.txt +""" + +def main(): + """Основная функция обработки файла""" + try: + # Чтение файла + with open('data.txt', 'r', encoding='utf-8') as f: + lines = f.readlines() + + # Обработка: убираем пробелы, переводим в верхний регистр + processed_lines = [] + for line in lines: + cleaned = line.strip() + if cleaned: + processed_lines.append(cleaned.upper()) + + # Сортировка + processed_lines.sort() + + # Запись результата + with open('output.txt', 'w', encoding='utf-8') as f: + for line in processed_lines: + f.write(line + '\n') + + print(f"✓ Обработано {len(processed_lines)} строк") + print("✓ Результат сохранен в output.txt") + + except FileNotFoundError: + print("✗ Ошибка: файл data.txt не найден") + except Exception as e: + print(f"✗ Ошибка: {e}") + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..b1dcad3 --- /dev/null +++ b/README.md @@ -0,0 +1,20 @@ +# Учебная практика по разработке ПО + +## Описание +Проект выполнен в рамках учебной практики. Включает: +- Работу с Git и Gitea +- Анализ данных в JupyterLab +- Сетевое программирование (TCP/UDP) +- Машинное обучение (спектральная кластеризация) + +## Структура +- `01_git_basics/` - основы Git и Python +- `02_jupyter_analysis/` - анализ данных +- `03_networking/` - сетевые соединения +- `04_spectral_clustering/` - кластеризация изображений + +## Установка +```bash +python -m venv .venv +.\.venv\Scripts\activate +pip install -r requirements.txt \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..2bab1c2 Binary files /dev/null and b/requirements.txt differ