본문으로 바로가기

현재 경로 getcwd() / 경로 변경 chdir()

getcwd() 은 파이썬을 실행한 현재 경로를 반환합니다.

import os

path = os.getcwd()
print(path)
os.chdir('test_dir')
path = os.getcwd()
print(path)
더보기
C:\Users\Desktop\Reference\Example\ex_os
C:\Users\Desktop\Reference\Example\ex_os\test_dir

 

응용) 커맨드라인 구현 -1

cmd = {
    'pwd': os.getcwd,
    'cd': os.chdir
}
while True:
    ip = input('>> ')
    splt = ip.split(' ')
    if splt[0] not in cmd.keys():
        print('- pwd\n- cd [dir]')
        continue
    if splt[0] == 'pwd':
        print(cmd['pwd']())
    elif splt[0] == 'cd':
        cmd['cd'](splt[1])
더보기
>> sadf
- pwd     
- cd [dir]
>> pwd    
C:\Users\Desktop\Reference\Example\ex_os
>> cd test_dir
>> pwd
C:\Users\Desktop\Reference\Example\ex_os\test_dir

 

하위 디렉터리 검색 listdir()

결과에 대한 주석입니다.

#1 현재 디렉터리

#2 listdir() 을 이용하여 현재 디렉터리 검색

#3 현재 디렉터리에 있는 test_dir 디렉터리 검색

#4 chdir() 을 이용하여 test_dir 로 이동 후 현재 디렉터리 검색 (#3과 결과 동일)

#1
path = os.getcwd()
print(path)
#2
file_list = os.listdir()
print(file_list)
#3
file_list = os.listdir('test_dir')
print(file_list)
#4
os.chdir('test_dir')
file_list = os.listdir()
print(file_list)
더보기
C:\Users\Desktop\Reference\Example\ex_os
['ex1.py', 'test_dir']
['1.txt', '2.txt']
['1.txt', '2.txt']

 

 

응용) 커맨드 라인 구현 -2

cmd = {
    'pwd': os.getcwd,
    'cd': os.chdir,
    'ls': os.listdir,
}
while True:
    ip = input('>> ')
    if ip == 'quit':
        break
    splt = ip.split(' ')
    if splt[0] not in cmd.keys():
        print('- pwd\n- cd [dir]\n- ls')
        continue
    if splt[0] == 'pwd':
        print(cmd[splt[0]]())
    elif splt[0] == 'cd':
        cmd['cd'](splt[1])
    elif splt[0] == 'ls':
        file_list = cmd['ls']()
        for file in file_list:
            print(file)
더보기
>> pwd
C:\Users\Desktop\Reference\Example\ex_os
>> ls
ex1.py
test_dir
>> cd test_dir
>> pwd
C:\Users\Desktop\Reference\Example\ex_os\test_dir
>> ls
1.txt
2.txt
>> cd ..
>> pwd
C:\Users\Desktop\Reference\Example\ex_os
>> ls
ex1.py
test_dir
>> quit