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

GetCoder.ru
Изображение статьи

В этой статье рассматривается способ рекурсивного создания вложенных директорий и записи данных в файл с использованием языка программирования Python. Подробно объясняется процесс работы кода, включающий использование модулей os и json, а также обработку исключений. Приводится пример кода с пошаговым описанием и его практическое применение.

В этой статье мы рассмотрим, как создать вложенные директории и записать данные в файл с использованием языка программирования Python. Мы будем использовать встроенные модули os и json. Рассмотрим пример кода, который выполняет эту задачу.

Импорт необходимых модулей

  • copy
import os import json

Определение функции для создания файла и директорий

Создадим функцию add_file, которая принимает два аргумента: name_file — полный путь к файлу, включая имя файла, и data_file — данные, которые нужно записать в файл в формате JSON.

  • copy
#-*- 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. Рассмотрим пример кода, который выполняет эту задачу.

Импорт необходимых модулей

  • copy
import os import json

Определение функции для создания файла и директорий

Создадим функцию add_file, которая принимает два аргумента: name_file — полный путь к файлу, включая имя файла, и data_file — данные, которые нужно записать в файл в формате JSON.

  • copy
#-*- 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 можно рекурсивно создавать вложенные директории и записывать данные в файл. Такой подход может быть полезен при работе с иерархическими структурами файлов и данных, обеспечивая автоматизацию создания необходимых директорий и хранения информации.