Skip to content

Commit be74cde

Browse files
committed
feat: add python index page
1 parent 91cec01 commit be74cde

7 files changed

Lines changed: 181 additions & 38 deletions

File tree

docs/index.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,12 @@
1515

1616

1717
Прогресс документации:
18-
[=8% "8%"]{: .danger}
18+
19+
## Прогресс документации:
20+
21+
<div style="display: flex; align-items: center; gap: 0.75rem; margin: 1rem 0;">
22+
<div style="flex: 0 0 500px; height: 8px; background: rgba(255,255,255,0.1); border-radius: 4px; overflow: hidden;">
23+
<div style="width: 10%; height: 100%; background: linear-gradient(90deg, #865b74ff, #D990B9);"></div>
24+
</div>
25+
<span style="color: rgba(255,255,255,0.7); font-size: 0.9rem;">10%</span>
26+
</div>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
# XOR
12
coming soon...

docs/notes/decorator.md

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -15,25 +15,24 @@
1515
<span class="badge">my_func = empty_deco(my_func)</span>
1616

1717
## Пример
18-
!!! note "Пример:"
19-
Подсчёт времени выполнения функции при помощи `Декоратора`.
20-
21-
:::python
22-
from typing import Callable
23-
import time
24-
25-
def empty_deco(func): # Identity decorator
26-
def wrapper(): # Создание обёртки
27-
start = time.time()
28-
res = func()
29-
end = time.time()
30-
print(f"Исполнение заняло {end-start}")
31-
return wrapper
32-
33-
# Decorator
34-
@empty_deco
35-
def my_func():
36-
time.sleep(0.6)
37-
return 124
38-
39-
print(my_func())
18+
```python
19+
20+
from typing import Callable
21+
import time
22+
23+
def empty_deco(func): # Identity decorator
24+
def wrapper(): # Создание обёртки
25+
start = time.time()
26+
res = func()
27+
end = time.time()
28+
print(f"Исполнение заняло {end-start}")
29+
return wrapper
30+
31+
# Decorator
32+
@empty_deco
33+
def my_func():
34+
time.sleep(0.6)
35+
return 124
36+
37+
print(my_func())
38+
```

docs/notes/index.md

Lines changed: 145 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,145 @@
1-
coming soon...
1+
# Python — Заметки и Концепции
2+
3+
Систематизированный гид по основам и продвинутым возможностям Python с примерами кода и объяснениями.
4+
5+
---
6+
7+
## Объектно-ориентированное программирование
8+
9+
Основы ООП и принципы проектирования классов.
10+
11+
- **[Введение в ООП](OOP.md)** — парадигма, классы, объекты
12+
- [Инкапсуляция](encapsulation.md) — сокрытие данных, приватные атрибуты
13+
- [Наследование](inheritance.md) — переиспользование кода, иерархия классов
14+
- [Полиморфизм](polymorphism.md) — единый интерфейс для разных типов
15+
- [Абстракция](abstraction.md) — абстрактные классы и методы
16+
17+
---
18+
19+
## Функции и декораторы
20+
21+
Создание, вызов и модификация функций.
22+
23+
- [Декораторы](decorator.md) — обёртки для функций, метапрограммирование
24+
- [Lambda-функции](lambda.md) — анонимные однострочные функции
25+
- [`*args` и `**kwargs`](args.md) — переменное число аргументов
26+
- [Передача словаря как аргументов](dict_arguments.md) — распаковка `**dict`
27+
- [Docstring](docstring.md) — документирование функций
28+
- [`global`](global.md) / [`nonlocal`](nonlocal.md) — область видимости переменных
29+
- [`if __name__ == "__main__"`](main.md) — точка входа в скрипт
30+
31+
---
32+
33+
## Структуры данных
34+
35+
Списки, словари, множества и работа с ними.
36+
37+
### Списки
38+
- [List comprehension](list_comprehension.md) — генераторы списков
39+
- [append vs extend](append_extend.md) — добавление элементов
40+
- [Сортировка](sort.md)`sort()` vs `sorted()`
41+
42+
### Словари
43+
- [Словари (dict)](dict.md) — ключ-значение, методы
44+
- [fromkeys, dict(zip())](fromkeys_dictzip.md) — создание словарей
45+
- [update()](update.md) — обновление словарей
46+
47+
### Множества
48+
- [Множества (set)](set.md) — уникальные элементы, операции
49+
- [Объединение (union)](union.md)`|`, `.union()`
50+
- [Пересечение (intersection)](intersection.md)`&`, `.intersection()`
51+
- [Симметричная разность (XOR)](XOR(symmetric_difference).md)`^`, `.symmetric_difference()`
52+
53+
### Хеш-таблицы
54+
- [Хеширование](hash.md)`hash()`, хешируемые объекты
55+
- [Хеш-таблицы](hash_table.md) — внутреннее устройство dict/set
56+
57+
---
58+
59+
## Итераторы и генераторы
60+
61+
Ленивые вычисления и работа с последовательностями.
62+
63+
- [yield](yield.md) — генераторы, ленивая генерация
64+
- [Generator expression](generator_expression.md) — синтаксис `(x for x in ...)`
65+
- [Starred expression](starred_expression.md) — распаковка `*args`
66+
67+
---
68+
69+
## Встроенные функции
70+
71+
Полезные встроенные инструменты Python.
72+
73+
- [map()](map.md) — применение функции к элементам
74+
- [zip()](zip.md) — параллельная итерация
75+
- [any()](any.md) — проверка истинности элементов
76+
- [format()](format.md) — форматирование строк
77+
78+
---
79+
80+
## Работа со строками
81+
82+
Методы и операции над строками.
83+
84+
- [split()](split.md) — разбиение строки
85+
- [Separator (join)](separator.md) — объединение строк
86+
- [title()](title.md) — капитализация слов
87+
- [rjust/ljust/center](rjast.md) — выравнивание строк
88+
89+
---
90+
91+
## Копирование объектов
92+
93+
Поверхностное и глубокое копирование.
94+
95+
- [Модуль copy](copy_lib.md)`copy()` и `deepcopy()`
96+
- [Shallow copy](shallow_copy.md) — поверхностное копирование
97+
- [Deep copy](deep_copy.md) — глубокое копирование
98+
99+
---
100+
101+
## Контекстные менеджеры
102+
103+
Управление ресурсами через `with`.
104+
105+
- [Context Manager](context_manager.md)`with`, `__enter__`, `__exit__`
106+
107+
---
108+
109+
## Особенности Python
110+
111+
Синтаксические нюансы и подводные камни.
112+
113+
- [Синтаксический сахар](sugar.md) — удобные сокращения языка
114+
- [del](del.md) — удаление переменных, элементов
115+
- [True/False как int](true_false_int.md)`True == 1`, `False == 0`
116+
- [Truth value](truth_value.md) — что считается истиной/ложью
117+
- [Умножение последовательностей](multiplication.md)`[0] * 5`
118+
- [Мутабельные значения по умолчанию](def_func(x=[]).md) — ловушка `def f(x=[])`
119+
- [Типы данных](types.md)`int`, `str`, `list`, `tuple`, etc.
120+
121+
---
122+
123+
## Внешние библиотеки
124+
125+
Примеры работы с популярными пакетами.
126+
127+
- [Pydantic](pydantic_is.md) — валидация данных
128+
- [Bcrypt](bcrypt_test.md) — хеширование паролей
129+
130+
---
131+
132+
## Недостающие темы, будут добавлены позже
133+
134+
- **Исключения**`try/except/finally`, `raise`, кастомные исключения
135+
- **Модули и пакеты**`import`, `__init__.py`, относительные импорты
136+
- **Асинхронность**`async/await`, `asyncio`, корутины
137+
- **Типизация** — type hints, `typing`, `mypy`
138+
- **Работа с файлами**`open()`, `read()`, `write()`, `pathlib`
139+
- **Регулярные выражения** — модуль `re`
140+
- **Тестирование**`pytest`, `unittest`, фикстуры
141+
142+
---
143+
144+
**Всего заметок:** 50+
145+
**Последнее обновление:** 18.12.2025

docs/stylesheets/extra.css

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -112,14 +112,3 @@ VitePress-like (dark, purple)
112112
[data-md-color-scheme="slate"] .md-sidebar__scrollwrap::-webkit-scrollbar-thumb:hover:active {
113113
background-color: #8f5f7a;
114114
}
115-
116-
/* ---------- Badge (span.badge) ---------- */
117-
118-
.md-typeset .badge {
119-
background: rgba(110, 118, 129, 0.22);
120-
border-radius: 4px;
121-
color: #D990B9;
122-
padding: 0.12em 0.5em;
123-
font-size: 0.9em;
124-
line-height: 1.2;
125-
}

docs/stylesheets/pygments-custom.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* Общий фон и скругление */
22
[data-md-color-scheme="slate"] .md-typeset pre > code,
33
[data-md-color-scheme="slate"] .md-typeset .highlight {
4-
background: #171717;
4+
background: #17191F;
55
border-radius: 10px;
66
}
77

mkdocs.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ edit_uri: edit/main/docs/
88
theme:
99
name: material
1010
font:
11-
text: Inter
11+
text: Roboto
1212
code: JetBrains Mono
1313
palette:
1414
- media: "(prefers-color-scheme: light)"
@@ -30,7 +30,6 @@ plugins:
3030
markdown_extensions:
3131
- admonition
3232
- attr_list
33-
- codehilite
3433
- pymdownx.highlight
3534
- pymdownx.superfences
3635
- pymdownx.blocks.caption
@@ -41,6 +40,9 @@ markdown_extensions:
4140
generic: true
4241
- pymdownx.snippets:
4342
base_path: ["."]
43+
- toc:
44+
permalink: '#'
45+
permalink_title: "meow"
4446

4547
extra_css:
4648
- stylesheets/extra.css

0 commit comments

Comments
 (0)