Python之檔案操作

2021-08-10 00:07:42 字數 4504 閱讀 1929

建立目錄

import os

import errno

defmkdir

(dir):

try:

os.makedirs(dir)

except oserror as exc:

if exc.errno == errno.eexist:

print("the dir has been existed !")

pass

else: raise

#建立名為test的目錄以及其名為00的子目錄

mkdir("test/00")

獲取檔案屬性 介面

簡介os.path.abspath(path)

獲取path絕對路徑

os.path.split(path)

將path分割為目錄和檔名的二元的元組

os.path.dirname(path)

path的目錄

os.path.basename(path)

返回最後檔案的檔名,如果以/或\結尾,返回為空

os.path.commonprefix(pathlist)

返回pathlist中共有的最長的路徑

os.path.join(pathlist)

將多個路徑組合後返回,第乙個路徑是絕對路徑之前的路徑引數將忽略

os.path.normcase(path)

linux和mac平台,原樣返回,windows平台會將所有的路徑中的字元轉化為小寫,將所有的斜槓轉化為反斜槓

os.path.normpath(path)

規範化檔案的路徑

os.path.splitdrive

返回由driver名和路徑組成的二元的元組

import os

abspath=os.path.abspath('file.py')

print("abspath :" + abspath)

splitpath=os.path.split('./file.py')

print("location : %s file : %s" % (splitpath[0], splitpath[1]))

splitpath=os.path.split(os.path.abspath('file.py'))

print("abs location : %s file : %s" % (splitpath[0], splitpath[1]))

dirname=os.path.dirname("./file.py")

print("directory name : " + dirname)

absdirname=os.path.dirname(os.path.abspath("file.py"))

print("abs directory name " + absdirname)

#end with / or \ basename return none

basename=os.path.basename("file.py")

print("base name " + basename)

pathlist=["d:\\zmakeup", "d:\\zmakeup\\00-code\\00-python\\00-test",

"d:\\zmakeup\\00-code\\"]

longestpath=os.path.commonprefix(pathlist)

print("longest path :" + longestpath)

joinpath=os.path.join("../","d:/zmakeup",'file.py')

print("joined path : " + joinpath)

normcasename=os.path.normcase("d:\programs\python\python36-32\python.exe")

print("norm case name " + normcasename)

# note the format of the path

normname=os.path.normpath("d://gstreamer\\1.0//x86_64\\bin//../etc")

print("norm name " + normname)

splitdrivename=os.path.splitdrive("d:/zmakeup\file.py")

print("driver %s others %s" % (splitdrivename[0], splitdrivename[1]))

返回的結果

abspath :d:\zmakeup\00-code\00-python\00-test\file.py

location : . file : file.py

abs location : d:\zmakeup\00-code\00-python\00-test file : file.py

directory name : .

abs directory name d:\zmakeup\00-code\00-python\00-test

base name file.py

longest

path :d:\zmakeup

joined path : d:/zmakeup\file.py

norm case name d:\programs\python\python36-32\python.exe

norm name d:\gstreamer\1.0\x86_64\etc

driver d: others /zmakeupile.py

介面

簡介os.path.exists(path)

判斷乙個檔案是否存在,true:存在 false:不存在

os.path.isabs(path)

判斷該路徑是某是絕對路徑

os.path.isfile(path)

判斷path是否時存在的檔案

os.path.isdir(path)

判斷path是否是乙個存在的目錄

import os

if os.path.exists("file.py"):

print("file.py existed")

else:

print("file.py not existed")

if os.path.isabs("file.py"):

print("this path is absolute path")

else:

print("this path is not absolute path")

if os.path.isfile("file.py"):

print("this is a file.")

else:

print("this is not a file")

if os.path.isdir("file.py"):

print("this is a directory.")

else:

print("this is not a directory.")

實驗結果

file.py existed

this path is not absolute path

this is a

file.

this is not

adirectory.

介面

簡介os.path.splitext(path)

返回檔名和副檔名組成的二元的元組

os.path.getsize(path)

獲取檔案的大小

os.path.getatime(path)

獲取檔案或者目錄最後訪問的時間

os.path.getmtime(path)

獲取檔案或者目錄最後修改的時間

import os

extension=os.path.splitext("d://zmakeup\\00-code\\00-python\\00-test\\file.py")

print("location %s entension %s " % (extension[0], extension[1]))

size=os.path.getsize('file.py')

stime=os.path.getatime('file.py')

mtime=os.path.getmtime('file.py')

print("size %u stime %u mtime %u " % (size, stime, mtime))

實驗結果

location

d://zmakeup\00-code\00-python\00-test\file entension .py

size 2396 stime 1510046250 mtime 1510046250

Python之檔案操作

file open filename,mode mode預設為 r 例如file ope test.txt r 以讀的方式開啟檔案.檔案操作完畢記得關閉.file.close 其中,mode可以有以下選擇 檔案test.txt的內容為 11111111111 aaaaaaaaa 2222222222...

Python之檔案操作

使用open w 以寫入模式開啟,如果檔案存在將會刪除裡面的所有內容,然後開啟這個檔案進行寫入 a 以追加模式開啟,寫入到檔案中的任何資料將自動新增到末尾 fobj open home coder documents obama.txt 唯讀開啟 fobj fobj.close 關閉檔案 fobj ...

Python之 檔案操作

1 開啟檔案 f open hello.txt a 開啟 hello.txt 檔案 r 唯讀模式,開啟的檔案不存在的話,會報錯 w 只寫模式,會清空原來檔案的內容 a 追加模式 開啟的檔案不存在,會新建乙個檔案2 讀寫檔案 f open hello.txt a f.write joly,123 np...