feat: implement legacy shop management system and add task documentation files
CI Check / lint-and-check (push) Failing after 9s
CI Check / lint-and-check (push) Failing after 9s
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
### Задача 3. Анализатор URL (Строки, Словари, Функции)
|
||||
|
||||
Напишите программу из 3 функций для парсинга URL:
|
||||
|
||||
1. `parse_url(url)` — принимает строку URL вида `"https://example.com/path?key1=value1&key2=value2"`. Разбирает URL на части и возвращает словарь:
|
||||
```python
|
||||
{
|
||||
"protocol": "https",
|
||||
"domain": "example.com",
|
||||
"path": "/path",
|
||||
"params": {"key1": "value1", "key2": "value2"}
|
||||
}
|
||||
```
|
||||
Если параметров нет, `params` должен быть пустым словарем.
|
||||
|
||||
2. `get_param(parsed_url, key, default=None)` — принимает результат `parse_url` и возвращает значение параметра по ключу `key`. Если параметра нет, возвращает `default`.
|
||||
|
||||
3. `format_url(parsed_url)` — принимает словарь из `parse_url` и собирает обратно строку URL.
|
||||
|
||||
**Тесты:**
|
||||
|
||||
1. Распарсите URL: `"https://api.github.com/search?q=python&sort=stars"`
|
||||
2. Получите значение параметра `q`
|
||||
3. Соберите URL обратно и сравните с оригиналом
|
||||
Reference in New Issue
Block a user