Рекурсивное создание директорий и сохранение данных в файл на Python


В этой статье рассматривается способ рекурсивного создания вложенных директорий и записи данных в файл с использованием языка программирования Python. Подробно объясняется процесс работы кода, включающий использование модулей os и json, а также обработку исключений. Приводится пример кода с пошаговым описанием и его практическое применение.
В этой статье мы рассмотрим, как создать вложенные директории и записать данные в файл с использованием языка программирования Python. Мы будем использовать встроенные модули os и json. Рассмотрим пример кода, который выполняет эту задачу.
Импорт необходимых модулей
import os
import json
Определение функции для создания файла и директорий
Создадим функцию add_file, которая принимает два аргумента: name_file — полный путь к файлу, включая имя файла, и data_file — данные, которые нужно записать в файл в формате JSON.
#-*- coding: UTF-8 -*-
import os, json
def add_file(name_file, data_file):
try:
mDirect = name_file.split('/')
del mDirect[-1]
directory_path = ''
for item in mDirect:
if item == '':
continue
rz = '' if directory_path == '' else '/'
directory_path += rz+item
if os.path.exists(directory_path) == False:
os.mkdir(directory_path)
f = open(name_file,'w')
f.write(json.dumps(data_file))
f.close()
except Exception as e:
print(e)
name_file = 'direct1/direct2/direct3/direct4/test.txt'
data_file = {'1': 1, '2': 2}
add_file(name_file, data_file)
Принцип работы
- Разделение пути на директории: Путь name_file разбивается на список директорий, удаляя при этом имя файла. Например, путь direct1/direct2/direct3/direct4/test.txt будет преобразован в ['direct1', 'direct2', 'direct3', 'direct4'].
- Создание директорий: В цикле проверяется наличие каждой директории. Если директория не существует, она создается с помощью os.mkdir(directory_path).
- Запись данных в фай: После создания всех необходимых директорий, файл открывается в режиме записи и в него записываются данные в формате JSON..
- Обработка исключений: Если возникает ошибка в процессе создания директорий или записи данных, она выводится на экран.
Заключение
Этот пример демонстрирует, как с помощью Python можно рекурсивно создавать вложенные директории и записывать данные в файл. Такой подход может быть полезен при работе с иерархическими структурами файлов и данных, обеспечивая автоматизацию создания необходимых директорий и хранения информации.
- 22.07.2024
- 10
- 0
Рекурсивное создание директорий и сохранение данных в файл на Python
В этой статье мы рассмотрим, как создать вложенные директории и записать данные в файл с использованием языка программирования Python. Мы будем использовать встроенные модули os и json. Рассмотрим пример кода, который выполняет эту задачу.
Импорт необходимых модулей
import os
import json
Определение функции для создания файла и директорий
Создадим функцию add_file, которая принимает два аргумента: name_file — полный путь к файлу, включая имя файла, и data_file — данные, которые нужно записать в файл в формате JSON.
#-*- coding: UTF-8 -*-
import os, json
def add_file(name_file, data_file):
try:
mDirect = name_file.split('/')
del mDirect[-1]
directory_path = ''
for item in mDirect:
if item == '':
continue
rz = '' if directory_path == '' else '/'
directory_path += rz+item
if os.path.exists(directory_path) == False:
os.mkdir(directory_path)
f = open(name_file,'w')
f.write(json.dumps(data_file))
f.close()
except Exception as e:
print(e)
name_file = 'direct1/direct2/direct3/direct4/test.txt'
data_file = {'1': 1, '2': 2}
add_file(name_file, data_file)
Принцип работы
- Разделение пути на директории: Путь name_file разбивается на список директорий, удаляя при этом имя файла. Например, путь direct1/direct2/direct3/direct4/test.txt будет преобразован в ['direct1', 'direct2', 'direct3', 'direct4'].
- Создание директорий: В цикле проверяется наличие каждой директории. Если директория не существует, она создается с помощью os.mkdir(directory_path).
- Запись данных в фай: После создания всех необходимых директорий, файл открывается в режиме записи и в него записываются данные в формате JSON..
- Обработка исключений: Если возникает ошибка в процессе создания директорий или записи данных, она выводится на экран.
Заключение
Этот пример демонстрирует, как с помощью Python можно рекурсивно создавать вложенные директории и записывать данные в файл. Такой подход может быть полезен при работе с иерархическими структурами файлов и данных, обеспечивая автоматизацию создания необходимых директорий и хранения информации.