Здравствуйте! <br/> Как можно реализовать проверку на наличие папки с именем, содержащимся в переменной `name`, и при её отсутствии создать эту папку, а внутри неё - папку с именем из переменной `ear`? <br/> Код, приведённый ниже, не работает. Могли бы вы помочь с исправлением? <br/>
```python
name = str("example")
ear = str("2025")
if os.path.exists(name) is False:
os.makedirs(name, ear)
```
<br/>
Для создания папок в Python с использованием функции `os.makedirs`, нужно правильно указать путь ко всем создаваемым директориям. В вашем коде есть небольшая ошибка в передаче аргументов в функцию `os.makedirs`.
Функция `os.makedirs` принимает один аргумент — путь к создаваемым директориям. Если вы хотите создать папку `ear` внутри папки `name`, вам нужно указать полный путь к новой папке, комбинируя оба имени.
Вот исправленный код:
```python
import os
name = "example"
ear = "2025"
# Проверяем, существует ли папка с именем 'name'
if not os.path.exists(name):
# Создаем папку 'name' и внутри нее папку 'ear'
os.makedirs(os.path.join(name, ear))
```
В этом коде используется `os.path.join(name, ear)`, чтобы правильно сформировать путь к папке, которую нужно создать. Функция `os.makedirs` создаст как папку `example`, так и вложенную папку `2025`.
Если папка `example` уже существует, код не будет ничего делать, так как проверка `os.path.exists(name)` предотвратит создание существующей папки.
<a href="https://sky.pro/media/kak-rabotat-s-modulem-os-path-v-python/" rel="nofollow">os.path</a> <br/> <pre><code class="python">import os
def create_nested_folder(parent_folder: str, nested_folder: str):
if not os.path.exists(parent_folder):
path = os.path.join(parent_folder, nested_folder)
os.makedirs(path)
return True
return False
if __name__ == "__main__":
folder = 'example'
n_fodler = '2025'
ret = create_nested_folder(folder, n_fodler)
print(ret)</code></pre>