티스토리 뷰
*2021.2.24 03:53
안녕하세요
프로그래밍을 배우는 빛나는 샤트입니다.
파이썬을 하다보면 로컬 경로에 있는 파일들을 불러올 일이 많습니다.
이미지, csv파일 등...
경로 설정 시 참고하면 좋은 파이썬 내장 모듈인 OS를 가지고 왔습니다!
*Jupyter Notebook에서 실행한 결과 이미지 캡쳐와 코드블럭을 함께 기재하겠습니다.
1. 현재 경로 출력
OS.getcwd()
!pwd
import os
print(os.getcwd())
print(type(os.getcwd()))
현재 디렉토리의 경로가 출력된다.
그리고 놀랍게도 데이터 유형이 ' string'이다!
즉, 하나의 오브젝트로 사용할 수 있다.
이런 특성을 이용해서 문자열을 추가로 더할 수 있다.
path와 path_new 변수에 각각 현재 경로와 현재경로 + '/pics'을 할당했다.
path = os.getcwd()
path_new = os.getcwd() + '/pics'
print(path)
print(path_new)
현재 디렉토리를 확인할 수 있는 또 다른 명령어는 `!pwd`이다.
그럼 이것도 오브젝트로 사용할 수 있는지 os.getcwd()와 비교해보면,
문법 오류가 난다! '!pwd'는 객체로서 사용할 수 없고 단지 디렉토리 정보만 알 수 있다.
!pwd # 객체는 아니다.
os.getcwd() == !pwd # 동등 비교 할 수 없다.
2. 경로에 있는 파일 또는 폴더 출력하기
os.listdir(경로)
os.listdir(path) # 경로에 있는 폴더와 파일 모두 출력
os.listdir('/home/aiffel-dj40/1.AIFFEL_Study/Exploration/E10_Image_Semantic_Segmentation')
os.listdir(path) == os.listdir('/home/aiffel-dj40/1.AIFFEL_Study/Exploration/E10_Image_Semantic_Segmentation')
os.listdir(경로) 는 경로에 있는 모든 파일과 폴더를 출력해 준다.
역시 경로 안에는 변수로 저장된 경로(타입: 문자열)가 들어가도 동일하게 작동한다.
혹시 경로 내에 특정 파일 확장자를 출력하고 싶다면 아래와 같이 시도해보자!
for i in os.listdir(path_new):
if i.endswith('jpg'): # 파일 이름 끝이 'jpg'라면
print(i)
*endswith('확장자'): '확장자'로 끝나는 파일 찾기. 예시) 'jpg'라면 파일 이름 끝이 'jpg' 인 파일이면 True 반환
3. 환경 변수 출력
os.getenv('HOME')
os.environ['HOME']
print(os.environ['HOME'])
print(os.getenv('HOME'))
print(os.environ['HOME'] == os.getenv('HOME'))
print(type(os.environ['HOME']))
print(type(os.getenv('HOME')))
운영 체제에 등록되어 있는 모든 환경 변수는 os 모듈의 environ이라는 속성을 통해서 접근이 가능
둘 다 동일한 출력이며 데이터 타입이 'string'이므로 경로 설정시 사용할 수 있다!
혹시 코딩을 하다가 '여긴 어디? 뭐가 있지?' 라는 생각이 들 때 익혀두면 바로 확인할 수 있다!
당신의 빛나는 코딩을 응원합니다.
피드백은 언제나 환영입니다!
'Python' 카테고리의 다른 글
[Python]if __name__ == "__main__" 활용법(from, import 활용) (0) | 2022.02.16 |
---|---|
[알고리즘]빗물트래핑 (0) | 2022.02.15 |
[알고리즘]두 수의 합 (0) | 2022.02.15 |
- Total
- Today
- Yesterday
- 광주AI
- AIFFEL
- 멘탈관리
- ros
- 아이펠
- 광주
- 멋쟁이사자처럼
- Python
- 실내자율주행
- SLAM강의
- 서빙로봇
- AIFFEL인공지능과정
- 대전 인공지능
- IT
- 도전
- 모두의 연구소
- SLAM공부
- 해커톤
- 자율주행기술
- 광주인공지능사관학교
- 모두의연구소
- 인공지능 교육
- 양정연SLAM
- Slam
- AIFFEL교육
- 인공지능교육
- 자율주행로봇
- 배달로봇
- AIFFEL후기
- 인공지능
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |