OS란?
Operating System의 약자로서 운영체제에서 제공되는 여러 기능을 파이썬에서 수행할 수 있는 모듈
현재 작업 폴더 얻기
os.getcwd()를 사용하여 얻는다. (get current working directory)
import os
os.getcwd()
# C:\\Users\\y_name\\test
디렉토리 변경
os.chdir(path)를 사용합니다. (path는 문자열로 넣어줘야 한다.)
os.chdir("/Users")
os.getcwd()
# 'C:\\Users'
특정 경로에 대해 절대 경로 얻기
os.path.abspath(path)
os.path.abspath("PycharmProjects")
# 'C:\\Users\\PycharmProjects'
경로 중 디렉토리명만 얻기
os.path.dirname(path)
os.path.dirname('C:/Users/y_name/PycharmProjects/pythonProject')
# 'C:/Users/y_name/PycharmProjects'
경로 중 파일명만 얻기
os.path.basename(path)
os.path.basename('C:/Users/y_name/PycharmProjects/pythonProject')
# 'pythonProject'
경로 중 디렉토리명과 파일명 나누어 얻기
os.path.split(path) 디렉토리명, 파일명이 리스트 형태로 결과가 나온다.
dir, file = os.path.split('C:/Users/y_name/PycharmProjects/pythonProject')
print(dir) # C:/Users/y_name/PycharmProjects
print(file) # pythonProject
파일 경로를 리스트로 얻기
파일 경로를 os.path.sep(OS별 파일 경로 나는 문자)를 이용해 split한다.
'Users\\y_name\\PycharmProjects\\pythonProject'.split(os.path.sep)
# ['Users', 'y_name', 'PycharmProjects', 'pythonProject']
경로를 병합하여 새 경로 생성
os.path.join(path, path1, path2, ...) path들을 묶어 하나의 경로로 만들어준다.
os.path.join("C:/Users/y_name/PycharmProjects/pythonProject", "test")
# "C:/Users/y_name/PycharmProjects/pythonProject\\test"
윈도우의 경우 seq = ' \\ ' 로 나타나고
맥, 리눅스의 경우 seq = ' / ' 로 나타난다.
디렉토리 안의 파일/서브 디렉토리 리스트
os.listdir(path) path 하위에 있는 파일, 디렉토리 리스트를 보여준다.
os.listdir('C:/Users/y_name/PycharmProjects/pythonProject')
# ['.idea', 'test1', 'test2', 'text.txt']
file_path 안에 하위 폴더, 파일들의 이름을 리스트로 가져온다.
파일 혹은 디렉토리가 존재하는지 체크
os.path.exists(path)
os.path.exists('C:/Users/y_name/PycharmProjects/pythonProject/test1')
# True
os.path.exists('C:/Users/y_name/PycharmProjects/pythonProject/test4')
# False
디렉토리가 존재하는지 체크
os.path.isdir(path)
os.path.isdir('C:/Users/y_name/PycharmProjects/pythonProject/test1')
# True
파일이 존재하는지 체크
os.path.isfile(path)
os.path.isfile('C:/Users/gowra/PycharmProjects/pythonProject/text.txt')
# True
파일의 크기
os.path.getsize(path)
os.path.getsize("C:/Users/gowra/PycharmProjects/pythonProject")
# 4096
'DL(Deep-Learning) > Python 기초' 카테고리의 다른 글
DataFrame 합치기1 (concat, merge, join) (0) | 2022.01.26 |
---|---|
[Python] Raw String이란? (0) | 2022.01.26 |
[Python] 예외처리 (0) | 2022.01.26 |
[Python] 클래스 Class 2 (0) | 2022.01.26 |
[Python] 클래스 Class 1 (0) | 2022.01.26 |