1. 程式人生 > >python - 目錄處理

python - 目錄處理



# -*- coding:utf-8 -*-

'''
@project: jiaxy
@author: Jimmy
@file: study_檔案目錄操作.py
@ide: PyCharm Community Edition
@time: 2018-11-13 09:06
@blog: https://www.cnblogs.com/gotesting/

'''

'''
目錄處理:OS
'''

import os


# 1.新建一個目錄:不要以數字開頭
os.mkdir('dirtest')
# os.mkdir(r'F:\培訓資料\python\test111')

# 2.刪除一個目錄
os.rmdir('dirtest')

# 3.建立多級目錄:不能跨級去建,確保除最後一級以外的目錄級別都存在
# os.mkdir('dirtest2')
# os.mkdir('dirtest2/dirtest3')

# 4.刪除包含有子資料夾的目錄:不可以跨級刪除
# os.rmdir('dirtest2/dirtest3')
# os.rmdir('dirtest2')

# 5.獲取當前路徑:具體到目錄
path = os.getcwd()
print(path)

# 6.獲取當前路徑:具體到檔案
file = os.path.realpath(__file__) #表示檔案本身
print(file)

# 7.如何獲取a.txt的路徑
# (1)絕對路徑 :NO
# (2)相對路徑 :NO
# (3)getcwd() :YES
cwd_path = os.getcwd()
txt_path = cwd_path + '/dirtest2/dirtest3/a.txt'
print(txt_path)
# (4)os.path.realpath() :YES
real_path = os.path.realpath(__file__)
print(real_path)
dir_path = os.path.split(real_path)[0]
print(dir_path)
txt_path2 = dir_path + '/dirtest2/dirtest3/a.txt'
print(txt_path2)

# 8.判斷當前的路徑到底是目錄還是檔案 directory ? file ?
# (1)os.path.isdir() 判斷是否為目錄
print(os.path.isdir(cwd_path))
print(os.path.isdir(txt_path))
# (2)os.path.isfile() 判斷是否為檔案
print(os.path.isfile(cwd_path))
print(os.path.isfile(txt_path))
# (3)os.listdir() 列出目錄及檔案
print(os.listdir(cwd_path))
# (4)os.path.dirname() 返回目錄名
print(os.path.dirname(real_path))
# (5)os.path.basename(__file__) 返回檔名
print(os.path.basename(__file__))


# 9.拼接路徑 os.path.join
new_path1 = os.path.join(cwd_path,'test','test1','test2')
new_path2 = os.path.join(cwd_path,'test3/test4/test5')
print(new_path1,new_path2)