새 폴더를 생성하고 그 안에 파일을 생성하거나 폴더 경로가 존재하지 않는 경우 자동으로 생성하는 Python 방식

참고: https://www.python100.com/html/S2IT74V832KF.html
Python에서 경로가 없는 경우 os.makedirs() 메서드를 사용하여 새 폴더나 디렉터리를 생성할 수 있습니다. 아래에서는 Python이 새 폴더를 생성하고 그 안에 파일을 생성하는 방법을 여러 측면에서 자세히 소개합니다.

1. 새 폴더 만들기

os.makedirs() 메서드를 사용하면 새 폴더나 디렉터리를 쉽게 만들 수 있습니다.

import os

path = "new_folder"
os.makedirs(path)

이 코드는 현재 작업 디렉터리에 "new_folder"라는 폴더를 생성합니다. 하지만 특정 경로 아래에 새 폴더를 만들고 싶다면 어떻게 해야 할까요?

import os

# 打开指定目录
path = "C:/Users/user/Desktop"
os.chdir(path)

# 创建新文件夹
new_folder = "new_folder"
os.makedirs(new_folder)

먼저 os.chdir() 메서드를 사용하여 지정된 디렉터리를 연 다음 os.makedirs() 메서드를 사용하여 해당 디렉터리에 "new_folder"라는 폴더를 만듭니다.

2. 새 폴더에 파일 만들기

open() 메서드를 사용하면 새 폴더에 새 파일을 쉽게 만들 수 있습니다.

import os

path = "new_folder"
os.makedirs(path)

file = open(path + "/new_file.txt", "w")
file.write("Hello World!")
file.close()

이 코드는 "new_folder"라는 새 폴더를 만들고 그 안에 "new_file.txt"라는 파일을 만든 다음 "Hello World!"라고 씁니다.

3. 폴더가 존재하는지 확인

새 폴더를 만들기 전에 폴더가 존재하지 않는지 확인해야 합니다. os.path.exists() 메서드를 사용하여 폴더가 존재하는지 확인할 수 있습니다.

import os

path = "new_folder"

if not os.path.exists(path):
    os.makedirs(path)
    print("Folder created")
else:
    print("Folder already exists")

이 코드는 "new_folder" 폴더가 존재하는지 확인합니다. 새 폴더를 생성하고 폴더가 없으면 "폴더 생성됨"이 인쇄되고, 이미 있으면 "폴더가 이미 존재함"이 인쇄됩니다.

4. 파일이 아닌 폴더만 생성
폴더만 생성하고 파일은 생성하지 않으려는 경우 os.mkdir() 메서드를 사용할 수 있습니다.

import os

path = "new_folder"
os.mkdir(path)

os.mkdir() 메서드는 os.makedirs() 메서드와 유사하지만 경로에 중간 폴더를 생성하지 않습니다. os.mkdir() 메서드는 경로에 디렉터리가 없으면 예외를 발생시킵니다.

5. 다단계 폴더 생성

다중 레벨 폴더를 생성하려면 여러 디렉터리가 포함된 경로를 os.mkdir() 또는 os.makedirs() 메서드에 전달할 수 있습니다.

import os

path = "new_folder/sub_folder/child_folder"
os.makedirs(path)

이 코드는 현재 작업 디렉토리에 "new_folder/sub_folder/child_folder"라는 다중 레벨 디렉토리를 생성합니다.

6. 요약

이 문서에서는 Python이 새 폴더를 만들고 그 안에 파일을 만드는 다양한 방법을 자세히 설명합니다. 먼저, os.makedirs() 메서드를 사용하여 새 폴더나 디렉터리를 만드는 방법을 배웠습니다. 다음으로는 새 폴더에 파일을 생성하는 방법, 폴더가 있는지 확인하는 방법, 파일을 생성하지 않고 폴더만 생성하는 방법에 대해 논의했습니다. 마지막으로 다단계 폴더를 만드는 방법에 대해 논의했습니다. 이 기사가 Python에서 폴더 생성 작업을 더 잘 이해하는 데 도움이 되기를 바랍니다.

추천

출처blog.csdn.net/qq_21237549/article/details/131939646