Skip to content

Commit 8f7f4df

Browse files
authored
Merge pull request #1 from hasan613/up_to_chapter_7
Up to chapter 7
2 parents fed0efb + bb35ee1 commit 8f7f4df

11 files changed

Lines changed: 1183 additions & 0 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,3 +333,4 @@ coverage/
333333

334334
/Math/calculus/theory
335335
/Math/school_theory
336+
SENATOROV/

log.ipynb

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "33de5850",
7+
"metadata": {},
8+
"outputs": [],
9+
"source": [
10+
"\"\"\"Learning progress log.\"\"\"\n",
11+
"\n",
12+
"AUTHOR = \"Hasan\""
13+
]
14+
},
15+
{
16+
"cell_type": "markdown",
17+
"id": "14db7ba7",
18+
"metadata": {},
19+
"source": [
20+
"### 18.01.2026 - Начало обучения\n",
21+
"\n",
22+
"* Настроил VS Code и установил плагины.\n",
23+
"* Создал профиль на GitHub (Readme).\n",
24+
"* Оформил профиль на Kaggle.\n",
25+
"* Сделал Fork репозитория курса и клонировал его.\n",
26+
"* Настроил pre-commit hooks."
27+
]
28+
}
29+
],
30+
"metadata": {
31+
"kernelspec": {
32+
"display_name": "base",
33+
"language": "python",
34+
"name": "python3"
35+
},
36+
"language_info": {
37+
"codemirror_mode": {
38+
"name": "ipython",
39+
"version": 3
40+
},
41+
"file_extension": ".py",
42+
"mimetype": "text/x-python",
43+
"name": "python",
44+
"nbconvert_exporter": "python",
45+
"pygments_lexer": "ipython3",
46+
"version": "3.13.5"
47+
}
48+
},
49+
"nbformat": 4,
50+
"nbformat_minor": 5
51+
}

log.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# +
2+
"""Learning progress log."""
3+
4+
AUTHOR = "Hasan"
5+
# -
6+
7+
# ### 18.01.2026 - Начало обучения
8+
#
9+
# * Настроил VS Code и установил плагины.
10+
# * Создал профиль на GitHub (Readme).
11+
# * Оформил профиль на Kaggle.
12+
# * Сделал Fork репозитория курса и клонировал его.
13+
# * Настроил pre-commit hooks.

python/cpython.ipynb

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "code",
5+
"execution_count": null,
6+
"id": "5d5c9daa",
7+
"metadata": {},
8+
"outputs": [
9+
{
10+
"data": {
11+
"text/plain": [
12+
"'TASK CPython'"
13+
]
14+
},
15+
"execution_count": 1,
16+
"metadata": {},
17+
"output_type": "execute_result"
18+
}
19+
],
20+
"source": [
21+
"\"\"\"TASK CPython.\"\"\""
22+
]
23+
},
24+
{
25+
"cell_type": "markdown",
26+
"id": "63bdf168",
27+
"metadata": {},
28+
"source": [
29+
"1. Что такое CPython и чем он отличается от Python?\n",
30+
" Python - это концепция языка программирования высокого уровня (набор инструкций, алгоритмов и описаний). СPython - это \\\"живая\\\" официальная реализация Python на языке С.\n",
31+
"3. Сколько существует реализаций Python, и какая из них самая популярная?\n",
32+
" - CPython (Самая популярная);\n",
33+
" - IPython,\n",
34+
" - IronPython,\n",
35+
" - Jython;\n",
36+
" - PyPy;,\n",
37+
" - PythonNet;\n",
38+
" - Stackless on,\n",
39+
" и другие.\n",
40+
"4. На каком языке написан CPython?\n",
41+
" На языке С\n",
42+
"5. Кто создал CPython?,\n",
43+
" - Guido van Rossum.\n",
44+
"6. Почему Python считается быстрым, несмотря на то, что это интерпретируемый язык?\n",
45+
" - ядро языка CPython написано на языке C, CPython вызывает инструкции на языке C.\n",
46+
"7. Напишите путь к Интерпретатору CPython на вашем компьютере,\n",
47+
" - C:\\\\Users\\\\4739361\\\\AppData\\\\Local\\\\Programs\\\\Python\\\\Python313\\\\python.exe\n",
48+
"8. Что содержится в папке include в CPython?\n",
49+
" - Файлы на языке C. Инструкции, описания структур данный, описание интерфейсов, ядро.\n",
50+
"9. Где можно найти исходный код CPython дайте ссылку на репозиторий гитхаб\n",
51+
" - https://github.com/python/cpython.\n",
52+
"10. (опционально) Как работает интерпретатор CPython при выполнении кода?\n",
53+
" - Интерпретатор выполняет код построчно.\n",
54+
"11. Какая команда используется для запуска файла с помощью CPython?\n",
55+
" - python\n",
56+
"12. Можно ли запускать текстовые файлы через интерпретатор Python? Почему?\n",
57+
" - Можно, потому что интерпретатор не обращает внимание на расширение файла.\n",
58+
"13. Как указать путь к интерпретатору и файлу для выполнения кода?\n",
59+
" - Зайти в консоль. Скопировать путь к интерпретатору и вставить в консоль.\n",
60+
" - (путь до интерпретатора - ПРОБЕЛ - путь до фала).\n",
61+
"14. Чем PyPy отличается от CPython?\n",
62+
" - Этот интерпретатор реализован в RPython. Основная цель PyPy - обеспечить максимальную совместимость с CPython и в то же время увеличить производительность. Работает примерно в 4.4 раза быстрее, чем CPython.\n",
63+
"15. Почему PyPy не может использоваться для всех проектов на Python?\n",
64+
" - На данный момент совместим не со всеми проектами на CPython.\n",
65+
"16. Где можно скачать PyPy?\n",
66+
" - pypy.org.\n",
67+
"17. Как установить PyPy после скачивания?\n",
68+
" - Распаковать архив в удобном место, добавит исполняемый файл в переменный среды (PATH).\n",
69+
"18. Как запустить файл с помощью PyPy?\n",
70+
" команда pypy \\\"расположение файла\\\".\n",
71+
"19. Почему PyPy выполняет код быстрее, чем CPython?\n",
72+
" - Pypy выполняет код быстрее CPython благодаря использованию JIT-компиляции (Just-in-Time — компиляция «на лету»). Это принципиально иной подход к исполнению кода. CPython работает как интерпретатор, а Pypy — как компилятор в машинный код для «горячих» участков программы.\n",
73+
"\n",
74+
"#### Практические задания\n",
75+
"Задание 1: Поиск и установка CPython\n",
76+
" - done\n",
77+
"\n",
78+
"Задание 2: Исследование структуры CPython\n",
79+
"Найдите папку, где установлен Python (например, через команду where python в терминале или свойства ярлыка).\n",
80+
"Откройте папку include и изучите её содержимое. Какое количество файлов на C там есть?\n",
81+
"Перейдите на [GitHub-репозиторий CPython](https://github.com/python/cpython) и найдите файл README. Прочитайте информацию о проекте.\n",
82+
" - В папке include 77 файла на языке C.\n",
83+
"Задание 3: Запуск файла с помощью CPython\n",
84+
" - done\n",
85+
"Задание 4: Установка и использование PyPy\n",
86+
" - done\n",
87+
"Задание 5: Сравнение производительности CPython и PyPy\n",
88+
" - провёл тест, результаты:\n",
89+
" pypy: 0.049\n",
90+
" CPython: 2.16\n",
91+
" Разница: 44x"
92+
]
93+
}
94+
],
95+
"metadata": {
96+
"kernelspec": {
97+
"display_name": "base",
98+
"language": "python",
99+
"name": "python3"
100+
},
101+
"language_info": {
102+
"codemirror_mode": {
103+
"name": "ipython",
104+
"version": 3
105+
},
106+
"file_extension": ".py",
107+
"mimetype": "text/x-python",
108+
"name": "python",
109+
"nbconvert_exporter": "python",
110+
"pygments_lexer": "ipython3",
111+
"version": "3.13.5"
112+
}
113+
},
114+
"nbformat": 4,
115+
"nbformat_minor": 5
116+
}

python/cpython.py

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
"""TASK CPython."""
2+
3+
# 1. Что такое CPython и чем он отличается от Python?
4+
# Python - это концепция языка программирования высокого уровня
5+
# (набор инструкций, алгоритмов и описаний). СPython - это
6+
# \"живая\" официальная реализация Python на языке С.
7+
# 3. Сколько существует реализаций Python, и какая из них самая популярная?
8+
# - CPython (Самая популярная);
9+
# - IPython,
10+
# - IronPython,
11+
# - Jython;
12+
# - PyPy;,
13+
# - PythonNet;
14+
# - Stackless on,
15+
# и другие.
16+
# 4. На каком языке написан CPython?
17+
# На языке С
18+
# 5. Кто создал CPython?,
19+
# - Guido van Rossum.
20+
# 6. Почему Python считается быстрым, несмотря на то, что это
21+
# интерпретируемый язык?
22+
# - ядро языка CPython написано на языке C, CPython вызывает
23+
# инструкции на языке C.
24+
# 7. Напишите путь к Интерпретатору CPython на вашем компьютере,
25+
# - C:\\Users\\4739361\\AppData\\Local\\Programs\\Python\\Python313\\python
26+
# 8. Что содержится в папке include в CPython?
27+
# - Файлы на языке C. Инструкции, описания структур данный,
28+
# описание интерфейсов, ядро.
29+
# 9. Где можно найти исходный код CPython дайте ссылку на репозиторий гитхаб
30+
# - https://github.com/python/cpython.
31+
# 10. (опционально) Как работает интерпретатор CPython при выполнении кода?
32+
# - Интерпретатор выполняет код построчно.
33+
# 11. Какая команда используется для запуска файла с помощью CPython?
34+
# - python
35+
# 12. Можно ли запускать текстовые файлы через интерпретатор Python? Почему?
36+
# - Можно, потому что интерпретатор не обращает внимание на
37+
# расширение файла.
38+
# 13. Как указать путь к интерпретатору и файлу для выполнения кода?
39+
# - Зайти в консоль. Скопировать путь к интерпретатору и
40+
# вставить в консоль.
41+
# - (путь до интерпретатора - ПРОБЕЛ - путь до фала).
42+
# 14. Чем PyPy отличается от CPython?
43+
# - Этот интерпретатор реализован в RPython. Основная цель
44+
# PyPy - обеспечить максимальную совместимость с CPython и в
45+
# то же время увеличить производительность. Работает примерно
46+
# в 4.4 раза быстрее, чем CPython.
47+
# 15. Почему PyPy не может использоваться для всех проектов на Python?
48+
# - На данный момент совместим не со всеми проектами на CPython.
49+
# 16. Где можно скачать PyPy?
50+
# - pypy.org.
51+
# 17. Как установить PyPy после скачивания?
52+
# - Распаковать архив в удобном место, добавит исполняемый
53+
# файл в переменный среды (PATH).
54+
# 18. Как запустить файл с помощью PyPy?
55+
# команда pypy \"расположение файла\".
56+
# 19. Почему PyPy выполняет код быстрее, чем CPython?
57+
# - Pypy выполняет код быстрее CPython благодаря
58+
# использованию JIT-компиляции (Just-in-Time — компиляция «на лету»).
59+
# Это принципиально иной подход к исполнению кода. CPython работает
60+
# как интерпретатор, а Pypy — как компилятор в машинный код для
61+
# «горячих» участков программы.
62+
#
63+
# #### Практические задания
64+
# Задание 1: Поиск и установка CPython
65+
# - done
66+
#
67+
# Задание 2: Исследование структуры CPython
68+
# Найдите папку, где установлен Python (например, через команду
69+
# where python в терминале или свойства ярлыка).
70+
# Откройте папку include и изучите её содержимое. Какое количество
71+
# файлов на C там есть?
72+
# Перейдите на [GitHub-репозиторий CPython]
73+
# (https://github.com/python/cpython) и найдите файл README.
74+
# Прочитайте информацию о проекте.
75+
# - В папке include 77 файла на языке C.
76+
# Задание 3: Запуск файла с помощью CPython
77+
# - done
78+
# Задание 4: Установка и использование PyPy
79+
# - done
80+
# Задание 5: Сравнение производительности CPython и PyPy
81+
# - провёл тест, результаты:
82+
# pypy: 0.049
83+
# CPython: 2.16
84+
# Разница: 44x

python/venv.ipynb

Lines changed: 140 additions & 0 deletions
Large diffs are not rendered by default.

python/venv.py

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
"""[TASK] Виртуальное окружение."""
2+
3+
# Ответы
4+
# 1. Создает виртуальное окружение в папке с названием venv
5+
# 1.1 pip list: Выводит список всех установленных в текущем
6+
# окружении пакетов и их версии.
7+
# pip freeze > requirements.txt: Сохраняет список всех
8+
# установленных библиотек с их точными версиями в текстовый файл.
9+
# pip install -r requirements.txt: Устанавливает все
10+
# библиотеки, перечисленные в указанном текстовом файле.
11+
#
12+
# 2. conda env list: Показывает список всех созданных виртуальных
13+
# окружений Conda и путь к ним.
14+
# conda create -n env_name python=3.5: Создает новое окружение
15+
# с именем env_name и устанавливает в него Python версии 3.5.
16+
# conda env update -n env_name -f file.yml: Обновляет пакеты в
17+
# окружении env_name, используя список зависимостей из файла конфигурации .yml.
18+
# source activate env_name: Активирует виртуальное окружение
19+
# (переключает терминал на работу внутри него).
20+
# source deactivate: Выходит из текущего виртуального окружения в базовое.
21+
# conda clean -a: Удаляет неиспользуемые пакеты, кэш загрузок и
22+
# временные файлы для очистки места на диске.
23+
#
24+
# 3. 1) ![image-2.png](attachment:image-2.png)
25+
# 2) ![image-3.png](attachment:image-3.png)
26+
#
27+
# 4. venv:
28+
# 1. Активируйте окружение (Windows: `venv\Scripts\activate`,
29+
# Linux/macOS: `source venv/bin/activate`)
30+
# 2. Используйте pip: `pip install имя_пакета`
31+
# conda:
32+
# 1. Активируйте окружение: `conda activate env_name`
33+
# (или `source activate env_name` на Linux/macOS)
34+
# 2. Используйте conda: `conda install имя_пакета`
35+
# или pip: `pip install имя_пакета`
36+
#
37+
# 5. pip freeze > requirements.txt - сохраняет все зависимости
38+
# виртуального/глобального проекта в файл requirements.txt
39+
# conda env export > environment.yml - сохраняет все зависимости
40+
# для Data Science виртуального/глобального проекта в файл environment.yml
41+
# 5.1 ![image.png](attachment:image.png)
42+
#
43+
# 6. pip install -r requirements.txt - устанавливает через pip
44+
# зависимости из файла requirements.txt
45+
# conda env create -f environment.yml. - создает виртуальное
46+
# окружение с помощью conda основанное на описание из environment.yml
47+
#
48+
# 7. pip list - выводит список всех установленных пакетов
49+
# Python с их версиями в текущем окружении.
50+
# pip show имя_пакета - выводит подробную информацию о конкретном
51+
# пакете.
52+
# conda list - выводит список всех установленных пакетов
53+
# в текущем conda-окружении с их версиями и источниками установки.
54+
#
55+
# 8. Обычно в conda, так как это уже готовая сборка под DS
56+
# дата сайнинисты используют обычно conda из-за того, что она
57+
# специально настроена и имеет нужные пакеты для работы с DS
58+
#
59+
# 9. ![image-4.png](attachment:image-4.png)
60+
#
61+
# 10. ![image-5.png](attachment:image-5.png)
62+
#
63+
# 11. Для изолированной работы от глобального окружения, в
64+
# виртуальном окружении связанным непосредственно с текущим
65+
# проектом и его задачами.
66+
# 12. Да
67+
# 13. Удалил

0 commit comments

Comments
 (0)