Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 16 additions & 16 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/mwouts/jupytext
rev: "v1.16.4b"
rev: "v1.19.1"
hooks:
- id: jupytext
entry: jupytext
Expand All @@ -15,17 +15,17 @@ repos:
- --warn-only
exclude: '.*\.md$'
- repo: https://github.com/PyCQA/docformatter
rev: "eb1df347edd128b30cd3368dddc3aa65edcfac38"
rev: "v1.7.7"
hooks:
- id: docformatter
args: [--in-place, --wrap-descriptions=120, --style=google]
- repo: https://github.com/psf/black.git
rev: "24.10.0"
rev: "26.1.0"
hooks:
- id: black

- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-black
name: nbqa-black
Expand All @@ -36,12 +36,12 @@ repos:
types_or: [jupyter, markdown]
additional_dependencies: [black]
- repo: https://github.com/asottile/pyupgrade
rev: "v3.19.0"
rev: "v3.21.2"
hooks:
- id: pyupgrade
args: [--py39-plus]
- repo: https://github.com/pycqa/isort
rev: "5.13.2"
rev: "8.0.0"
hooks:
- id: isort
entry: isort
Expand All @@ -50,7 +50,7 @@ repos:
- --float-to-top

- repo: https://github.com/nbQA-dev/nbQA
rev: "1.9.0"
rev: "1.9.1"
hooks:
- id: nbqa
entry: nbqa blacken-docs
Expand All @@ -60,7 +60,7 @@ repos:
args:
- --nbqa-md
- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-pyupgrade
name: nbqa-pyupgrade
Expand All @@ -83,7 +83,7 @@ repos:
- --float-to-top

- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
rev: v2.4.1
hooks:
- id: codespell
additional_dependencies:
Expand All @@ -94,7 +94,7 @@ repos:
- --skip=*.js,*.html,*.css,*.svg",*.json,*.png,*.jpg,*.yml,*.yaml
exclude: '^python/makarov/|^python/oop\.ipynb$'
- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-flake8
args:
Expand All @@ -112,7 +112,7 @@ repos:
- flake8-functions-names

- repo: https://github.com/PyCQA/flake8
rev: 7.1.1
rev: 7.3.0
hooks:
- id: flake8
args:
Expand All @@ -124,7 +124,7 @@ repos:
- flake8-functions-names

- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-mypy
name: nbqa-mypy
Expand Down Expand Up @@ -169,7 +169,7 @@ repos:


- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.13.0
rev: v1.19.1
hooks:
- id: mypy
args:
Expand Down Expand Up @@ -207,7 +207,7 @@ repos:
- types-setuptools

- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-pylint
name: nbqa-pylint
Expand All @@ -225,7 +225,7 @@ repos:


- repo: https://github.com/pylint-dev/pylint
rev: "v3.3.1"
rev: "v4.0.5"
hooks:
- id: pylint
name: pylint
Expand All @@ -242,7 +242,7 @@ repos:
additional_dependencies: [pylint]

- repo: https://github.com/nbQA-dev/nbQA
rev: 1.9.0
rev: 1.9.1
hooks:
- id: nbqa-pydocstyle
name: nbqa-pydocstyle
Expand Down
172 changes: 172 additions & 0 deletions quiz1.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"id": "cf423924",
"metadata": {},
"outputs": [],
"source": [
"\"\"\"Quiz 1.\"\"\""
]
},
{
"cell_type": "markdown",
"id": "aa927456",
"metadata": {},
"source": [
"'Quiz 1.'\n",
"\n",
"Список вопросов к видео https://youtu.be/hW_7hodGxVU?si=tCEVs00xGt2q61eW (АЛГОРИТМ ПРИНЯТИЯ И ОТДАЧИ ДОМАШКИ):\n",
" \n",
"(По желанию )В ответе подробно всё опишите и обязательно нужно указывать тайм код из видео где я это сказал, по желанию, дополнительно прикладываем скриншот из видео.\n",
"Если вы знаете ответы на вопросы из Вашего опыта, то таймкоды из видео не надо указывать и т.д.\n",
"\n",
"1) Как понять, что домашка пришла?\n",
"В чате homework будет тег и сообщение - прими пул.\n",
"2) Как принять домашку?\n",
"Заходим а \"Кошку\" (Github desktop), нажимаем Fetch origin, заходим в history и смотрим самый верхний коммит.\n",
"3) Зачем нужна кнопка history и какие функции появляются при нажатии правой кнопки мыши на коммит?\n",
"Кнопка history показывает историю коммитов. Если нажать правой кнопкой на коммит, то выйдет контекстное меню.\n",
"3.1) Где брать ссылку на коммит? куда её отправлять?\n",
"Ссылку брать с Гитхаба (в \"Кошке\" можно нажать правой кнопкой мыши по коммиту и перейти на гитхаб) и отправлять в чат homework, пишем \"Коммит отдал\".\n",
"4) Что такое файл лога?\n",
"Это - текстовый файл, куда автоматически записывается важная информация.\n",
"4.1) Когда нужно его пушить?\n",
"После заполнения и проверки на ошибки.\n",
"5) Что такое интерпретатор? \n",
"Программа, которая выполняет код, написанный на языке программирования.\n",
"6) Где можно выбрать интерпретатор?\n",
"В правом верхнем углу ячейки с кодом в файле с расширением .ipynb.\n",
"7) Что такое модуль?\n",
"Это файл с кодом и расширением .py или .ipynb. \n",
"8) Как создать и отправить коммит?\n",
"Нажать в кошке Commit&sync, Commit&push.\n",
"9) Как посмотреть что коммит точно отправлен и находится в github?\n",
"Коммит должен быть виден на github и в History в \"Кошке\".\n",
"10) Какая команда показывает что код не прошёл проверки на ошибки?\n",
"Команда в терминале pre-commit run --all-files.\n",
"10.1) Напишите список линтеров которые используются для проверки кода и дайте их краткую характеристику.\n",
"Mypy: статический анализатор типов, проверяет корректность аннотаций типов без выполнения кода.\n",
"Pylint: комплексный линтер, оценивает стиль, читаемость, ошибки и соответствие PEP 8.\n",
"Pydocstyle: фокусируется на документации, ищет отсутствие или некорректные docstring.\n",
"Flake8: быстрый инструмент для стиля, сочетает для выявления ошибок и нарушений PEP 8.\n",
"11) Как узнать какой именно линтер не прошёл проверку?\n",
"При проверке через терминал командой pre-commit run --all-files у линтера который не прошел проверку будет статус Failed.\n",
"12) Линтер Pylint видит markdown?\n",
"Нет.\n",
"13) Номер ячейки в терминале и номер ячейки в vs code может отличаться? в каком случае?\n",
"Номер ячейки в терминале и номер ячейки в vs code может отличаться. Потому что линтер не видит ячейки markdown.\n",
"14) Где посмотреть номер ячейки в vscode?\n",
"Справа внизу от ячейки\n",
"15) В каком формате ipynb отправляется в гитхаб? причём здесь JSON?\n",
"Файлы с расширением .ipynb отпраляются на гитхаб в формате JSON. JSON здесь при том, что .ipynb — это и есть JSON-файл.\n",
"Расширение другое, но формат внутри — обычный JSON-текст.\n",
"То есть Jupyter Notebook — это просто структурированный JSON-документ.\n",
"16) Где посмотреть в какой ячейке ошибка?\n",
"Рядом с кодом ошибки или с помощью сочетания клавиш CTRL + F.\n",
"17) Как запустить терминал?\n",
"В VScode нажать Terminal -> New Terminal.\n",
"18) Что такое линтер?\n",
"Это программа, которая проверяет файл/файлы на соответствие стандартам линтера.\n",
"19) В какой сайт нужно вставлять код ошибки если ошибка связана с pylint?\n",
"pylint.readthedocs.io\n",
"20) Секция pydocstyle в большинстве случае автоматический закрывается после исправления ошибок в каком линтере?\n",
"В pylint\n",
"21) Что такое описание модуля? Оно должно отражать информацию о том что находится в модуле?\n",
"Да, оно должно отражать основную информацию о содержимом: что делает модуль, какие функции/классы предоставляет, для чего предназначен, а также ключевые особенности использования.\n",
"21.1) С какой git команды начинается утро программиста?\n",
"Fetch origin.\n",
"22) После внесения изменений в файлах, кнопка open in vs code пропадает в кошке, как по другому открыть vs code из кошки?\n",
"Нажать правой кнопкой на Current repository и кликнуть open in VS code.\n",
"23) Что такое stash? \n",
" Общее объяснение концепции.\n",
"Git stash — это встроенный механизм Git для временного сохранения незакоммиченных изменений в рабочей директории и индексе, чтобы очистить их и продолжить работу (например, переключиться на другую ветку).\n",
"23.1) Как сохранить стэш?\n",
" git командa(подсказка: https://t.me/c/1937296927/3602/19531): git stash save \"Name_stash\" - сохранение в буфер обмена git stash apply \"Number_stash\" - извлечение из буфера обмена.\n",
"\n",
" Кнопка в vs code: Кнопка в vs code: Stash changes and continue.\n",
"\n",
"23.2) Как восстановить стэш(подсказка: https://t.me/c/1937296927/3602/25747)?: Командой git stash apply.\n",
"\n",
" git команда(подсказка: https://t.me/c/1937296927/3602/19531)?: git stash apply\n",
"\n",
"23.3) Различие между стэшем и коммитом.\n",
"Коммит нужно делать - когда мы завершили действия и можем вылоожить в ветку. Стеш нужно делать - когда мы не завершили работу и хотим вернуться, чтобы доделать.\n",
" Когда лучше сохранить изменения в стэше, а когда коммитить.\n",
"23.4) Как просмотреть список сохраненных стэшей?\n",
" git команда (подсказка: https://t.me/c/1937296927/3602/19531): git stash list\n",
"\n",
"23.5) Как удалить стэш?\n",
" Команды для удаления отдельных стэшей или всех сразу.\n",
" git команда (подсказка: https://t.me/c/1937296927/3602/19531): git stash drop git stash clean\n",
"\n",
"23.6) Практические примеры использования стэша. \n",
" Краткие сценарии, где стэш помогает.\n",
" Когда нужно Спрятать изменения, когда возник конфликт или спрятать изменения, когда нужно поработать над другой задачей.\n",
"\n",
"24) Где посмотреть что есть конфликт в файлах? Рядом с файлом readme будет стоять треугольник с восклицательным знаком. Нажимаем Open in VS Code. Зеленым цветом будет выделено то, что с гитхаба, синим - локальные изменения.\n",
"24.1) Когда он появляется?\n",
"Когда с файлами работают одновременно два человека.\n",
"25) Как решить конфликт в файлах?\n",
"Нажать Reserve in Merge Editor, Complete Merge.\n",
"26) Напишите правильное утверждение\n",
"-Зелёное то что пришло с гитхаба и синее локальные изменения или синее то что пришло с гитхаба и зелёное это локальные изменения\n",
"Зеленое - то что пришло с github Синее - локальные изменения.\n",
"27) Если мы работаем в одном файле, можно ли принять pull после того как вы спрячете в стэш свои изменения?\n",
"Да.\n",
"27.1) Что может произойти когда stash восстановите после принятия pull?\n",
"Может произойти конфликт.\n",
"28) Сколько способов решения конфликтов было показано в видео? Напишите ЧИСЛО и укажите их способы.\n",
"В видео было показано 2 способа: 1 способ - с помощью Accept Incoming Change,Accept Current Change, Accept Both Changes 2 способ - вручную удалить то что не нужно.\n",
"29) Что делает кнопка complete merge?\n",
"Завершает процесс merge после разрешения конфликтов.\n",
"30) В какой чат нужно писать если остались вопросы?\n",
"В чат HELP ME.\n",
"31) Что такое FORK? Зачем его делают?\n",
"FORK - это копия чужого репозитория. Его делают, чтобы вносить изменения, не затрагивая оригинала.\n",
"32) Как скачать форкнутый репозиторий на локальный компьютер?\n",
"Нажать на него, выбрать Open in GitHub Desktop, затем клонировать с помощью Clone.\n",
"33) С какой вероятностью ваши ошибки были уже решены? и кто их решил?\n",
"C вероятностью 90%. Их решил Сенаторов Руслан Олегович или другие участники школы.\n",
"34) Как создать файл в vs code?\n",
"В VScode в explorer (обозреватель) нажать New File...\n",
"35) Файл лога нужно заполнять в конце каждого урока?\n",
"Да.\n",
"==================\n",
"\n",
"Дополнительные вопросы:\n",
"1)Какая команда конвертирует файл в py из ipynb? jupitex --to py\n",
"подсказка https://t.me/c/1937296927/1/26527\n",
"2) Что такое пакетный менеджер? Вы пользуетесь пакетным менеджером conda или pip? Какой лучше использовать для дата сайнс?\n",
"Пакетный менеджер - инструмент для установки и управления библиотеками/пакетами Для Data Science лучше использовать Conda - он упраляет не только Python-пакетами, но и зависимостями системы, библиотеками (NumPy, SciPy) с нативными расширениями.\n",
"3) Почему расширение py лучше чем ipynb?\n",
"1. Удобнее для версионирования (Git лучше работает с текстом).\n",
"2. Линтеры (Pilint, Pidocstyle) корректно работают только с .py, проще ревью кода.\n",
"3. Лучше для продакшн-кода и автоматизации.\n",
"4) Что такое pep8?\n",
"Pep8 - официальный стандарт стиля для кода Python.\n",
"подсказка:https://peps.python.org/pep-0008/\n",
"4.1) линтеры проверяют на соблюдение pep8?\n",
"Да. Flake8 и Pylint проверяют код на соответствие pep8. \n",
"4.2) Какая нотация используется для создания переменных?\n",
"snake_case\n",
"ответ на 85-95 страницы https://t.me/c/1937296927/1/16676\n",
"4.3) Может ли переменная состоять из одной буквы например андерскор \"_\" ?\n",
"Да.\n",
"4.4) Зачем и где мы используем андерскор _\n",
"Для замены пробелов и улучшения читаемости.\n",
"4.5) По PEP8 допустима переменная в одну букву?\n",
"Да, но не рекомендовано для обычных переменных. Лучше использовать понятные имена. Исключения - в циклах, в малых областях видимости.\n",
"ответ на 85-95 страницы https://t.me/c/1937296927/1/16676"
]
}
],
"metadata": {
"language_info": {
"name": "python"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Loading
Loading