os.path的用法總結如下:
- os.path.isfile(filename) # 判斷是否是文件
- os.path.isdir(''路徑') # 判斷目標路徑是否是文件夾
- os.path.exists('文件/文件夾路徑') # 判斷給出的文件或文件夾路徑是否存在
- os.path.join('路徑', '文件夾', '文件/文件名')
- os.path.abspath(name): # 獲得絕對路徑
- os.path.realpath(_file_) # 獲取當前文件的絕對路徑
- os.path.basename(path): # 返回文件名 或 單獨的文件夾名 決定於path的最后一個字符串是文件還是文件夾
- os.listdir(目錄) # 以列表的形式返回目錄下的所有文件和文件夾,目錄可以是絕對或相對路徑
res1 = os.path.abspath(__file__)
print(res1)
# P:\MKY\ssl\util\111.py
print(os.path.basename(res1))
# 111.py
print(os.path.basename(os.path.dirname(res1)))
# util
- os.path.dirname('文件的絕對路徑') # 獲取文件所在文件夾的路徑,與os.path.realpath()配合使用
data_file_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'resource', 'service_order_datas')
print(data_file_dir)
# 獲取當前文件路徑os.path.realpath(__file__) P:\fffw\sot\util\sott.py
# 運行結果:'P:\\FFFW\\SOT\\res\\SOP
- os.path.split('文件路徑') # 返回數組 包含文件名 和 文件所在文件夾路徑
res3 = os.path.split(os.path.abspath(__file__))
print(res3)
# 結果:('p:\\FFFW\\sot\\POIP', '111.py')
- os.path.splitext():分離文件名與擴展名 結果是包含兩個元素的數組
import os
def fun():
res = os.path.splitext(os.path.realpath(__file__))
print(res)
if __name__ == '__main__':
fun()
# 運行結果:('p:\\FFFW\\SOT\\YUI\\111', '.py')
- os.path.getsize(name):獲得文件大小,如果name是目錄返回0L,如果那么為文件,則返回文件的字節數
- os.makedirs(folder) :創建文件夾
- os.getcwd() # 無參 查看當前文件所在文件夾路徑
# 當前文件絕對路徑
print(os.getcwd())
with open(folder+'new.py', 'r') as f:
f.close()
# 或則
f = open(folder+'new.py', 'r')
f.close()
import os
import shutil
os.remove(path) #刪除文件
shutil.rmtree(path) #刪除文件夾及其子文件或文件夾
# ESOURCE_PATH 是當前文件所在文件夾目錄
ESOURCE_PATH = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(ESOURCE_PATH , 'RzrqResFile', param)
if not os.path.exists(path):
os.makedirs(path)
# 參數param既可以是文件夾 也可以是文件名
gg = os.listdir(r'./')
# ['11.py', 'log', 'Log.py', 'read_excel_db.py']
gg = os.listdir(r'E:\ghy\util')
# ['11.py', 'log', 'Log.py', 'read_excel_db.py']