os模組對檔案路徑的 概述

2021-09-21 17:38:21 字數 2578 閱讀 7382

(1)os.path.join()函式

如果將單個檔案和路徑上的資料夾名稱的字串傳遞給它,os.path.join()就會返回乙個檔案路徑的字串,包含正確的路徑分隔符。

>>> import os

>>> os.path.join('usr', 'bin', 'spam')

'usr\\bin\\spam'  #出現兩個反斜槓的原因是因為有乙個是轉義字元。 

import os

a = os.path.join('usr', 'bin', 'spam')

print(a)#返回usr\bin\spam

還可以使用os.path.join(a,b)   a是b的爸爸

例:

import os

a = ['a','b','c']

for i in a:

print(os.path.join('g:\\1\\2\\', i))

輸出:

g:\1\2\a.txt

g:\1\2\b.txt

g:\1\2\c.txt

(2)os.getcwd()函式 返回當前目錄

例:import os

print(os.getcwd())#返回當前的工作目錄

(3)用os.makedirs()建立新資料夾

import os

os.makedirs('g:\\新的\\資料夾') #新建的資料夾 『新的』是『資料夾』的爸爸 倆都是資料夾

(4)處理絕對路徑和相對路徑

• 呼叫os.path.abspath(path)將返回引數的絕對路徑的字串。這是將相對路徑轉

換為絕對路徑的簡便方法。

• 呼叫os.path.isabs(path),如果引數是乙個絕對路徑,就返回true,如果引數是

乙個相對路徑,就返回false。

• 呼叫os.path.relpath(path, start)將返回從start 路徑到path 的相對路徑的字串。

如果沒有提供start,就使用當前工作目錄作為開始路徑。

>>> os.path.relpath('c:\\windows', 'c:\\')

'windows'

>>> os.path.relpath('c:\\windows', 'c:\\spam\\eggs')

'..\\..\\windows'

>>> os.getcwd()

'c:\\python34'

呼叫os.path.dirname(path)將返回乙個字串,它包含path 引數中最後乙個斜槓之前的所有內容。

呼叫os.path.basename(path)將返回乙個字串,它包含path 引數中最後乙個斜槓之後的所有內容。

>>> path = 'c:\\windows\\system32\\calc.exe'

>>> os.path.basename(path)

'calc.exe'

>>> os.path.dirname(path)

'c:\\windows\\system32'

如果同時需要乙個路徑的目錄名稱和基本名稱,就可以呼叫os.path.split(),獲得這兩個字串的元組

得這兩個字串的元組,像這樣:

>>> calcfilepath = 'c:\\windows\\system32\\calc.exe'

>>> os.path.split(calcfilepath)

('c:\\windows\\system32', 'calc.exe')

import os

path = 'g:\\xin\\dd\\sa.txt' #傳進去目錄

print(path.split(os.path.sep)) #將目錄轉換為列表。

輸出:['g:', 'xin', 'dd', 'sa.txt']

split()字串方法將返回乙個列表,包含該路徑的所有部分。如果向它傳遞

os.path.sep,就能在所有作業系統上工作。

(4)檢視檔案大小和資料夾內容

呼叫os.path.getsize(path)將返回path 引數中檔案的位元組數。 就是返回某個檔案的大小

import os 

os.path.getsize('g:\')

呼叫os.listdir(path)將返回檔名字串的列表,包含path 引數中的每個檔案

import os 

>>> os.listdir('g:\\python\\')

['.idea', 'anaconda']

遍歷目錄下的檔案

檢查路徑的有效性

• 如果path 引數所指的檔案或資料夾存在,呼叫os.path.exists(path)將返回true,

否則返回false。

• 如果path 引數存在,並且是乙個檔案,呼叫os.path.isfile(path)將返回true,否

則返回false。

• 如果path 引數存在,並且是乙個資料夾,呼叫os.path.isdir(path)將返回true,

否則返回false。

os模組 檔案路徑

1.檔案所在絕對路徑 file d program os.path.abspath file d program 注意 os.getcwd 返回當前工作目錄,當工作目錄與檔案實際所在路徑不同時,返回結果與os.path.abspath 返回結果不同2.檔案所在資料夾路徑 os.path.dirnam...

os 模組 python file 與檔案路徑

eg1 root kooxoo20 180 sersync cat test.py usr bin env python print file root kooxoo20 180 sersync python test.py test.py me相對路徑得到的是相對路徑 root kooxoo20 ...

os模組關於路徑

os模組關於路徑的幾個主要方法 os.path 模組路徑訪問函式 os.path.basename 去掉目錄路徑,返回檔名 os.path.dirname 去掉檔名,返回目錄路徑 os.path.split 將路徑分為 dirname,basename 元組os.path.join 將目錄路徑和檔案...