真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python函數(shù)目錄創(chuàng)建,python生成目錄樹

python--目錄操作

一、os.getcwd()

創(chuàng)新互聯(lián)建站是一家專業(yè)提供無(wú)極企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站建設(shè)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為無(wú)極眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

獲取當(dāng)前工作目錄,即當(dāng)前Python腳本工作的目錄路徑。

二、os. chdir(path)

改變當(dāng)前腳本工作目錄;相當(dāng)于shell下的cd命令。

三、os.pardir

返回當(dāng)前目錄的父目錄('..')

四、獲取當(dāng)前使用的操作系統(tǒng)類型(其中 ‘nt’ 是 windows,’posix’ 是linux 或者 unix)。

五、os.mkdir(path [, mode=0777])

生成單級(jí)目錄;相當(dāng)于linux中的mkdir dirname。參數(shù)mode表示生成的目錄的權(quán)限,默認(rèn)是超級(jí)權(quán)限,也就是0777。如果重復(fù)創(chuàng)建,會(huì)報(bào)錯(cuò)

六、os.makedirs(path [, mode=0777])

可生成多層遞歸目錄,父目錄如果不存在,遞歸生成。參數(shù)mode表示生成的目錄的權(quán)限,默認(rèn)是超級(jí)權(quán)限,也就是0777。

七、os.removedirs(path)

若目錄為空,則刪除,并遞歸到上一級(jí)目錄,如若也為空,則刪除,依次類推。

八、os.rmdir(path)

刪除單級(jí)空目錄,若目錄不為空則無(wú)法刪除,會(huì)報(bào)錯(cuò);相當(dāng)Linux中的rmdir dirname。

九、os.listdir(path)

列出指定目錄下的所有文件和子目錄,包括隱藏文件或目錄,并以列表形式返回。

十、os.remove(filePath)

刪除一個(gè)指定的文件,參數(shù)filePath表示文件所在的路徑。

注意:該方法只能刪除文件,不能刪除目錄。

十一、os.rename(oldname, newname)

重命名文件/目錄。

十二、os.access(path, mode)

輸出文件權(quán)限模式。

十三、os.chmod(path, mode)

修改文件的權(quán)限。

十四、os.walk(top, topdown=True, onerror=None, followlinks=False)

?top:表示需要遍歷的目錄樹的路徑。

?topdown的默認(rèn)值是“True”,表示首先返回目錄樹下的文件,然后遍歷目錄樹下的子目錄。值設(shè)為False時(shí),則表示先遍歷目錄樹下的子目錄,返回子目錄下的文件,最后返回根目錄下的文件。

?onerror的默認(rèn)值是“None”,表示忽略文件遍歷時(shí)產(chǎn)生的錯(cuò)誤。如果不為空,則提供一個(gè)自定義函數(shù)提示錯(cuò)誤信息后繼續(xù)遍歷或拋出異常中止遍歷。

?該函數(shù)返回一個(gè)列表,列表中的每一個(gè)元素都是一個(gè)元組,該元組有3個(gè)元素,分別表示每次遍歷的路徑名,目錄列表和文件列表。

?默認(rèn)情況下,os.walk 不會(huì)遍歷軟鏈接指向的子目錄,若有需要請(qǐng)將followlinks設(shè)定為true

十五、os.path.split(path)

將path分割成目錄和文件名(事實(shí)上,如果你完全使用目錄,它也會(huì)將最后一個(gè)目錄作為文件名而分離,同時(shí)它不會(huì)判斷文件或目錄是否存在),并存于元組中返回。

十六、os.path.exists(path)

判斷path是否存在,如果存在返回True,否則返回False。

十七、os.path.isfile(path)

判斷path是否是文件,如果是返回True,否則返回False。

十八、os.path.isdir(path)

判斷path是否是目錄,如果是目錄返回True,否則返回False。

十九、os.path.getsize(name)

獲得文件大小,如果name是目錄返回結(jié)果是0L或者4096L;如果name代表的目錄或文件不存在,則會(huì)報(bào)WindowsError異常。

二十、os.path.join(a, *p)

連接兩個(gè)或更多的路徑名,中間以“\”分隔,如果所給的參數(shù)中都是絕對(duì)路徑名,那先給的絕對(duì)路徑將會(huì)被丟棄。

二十一、os.path.getatime(filename)

返回文件的最后訪問時(shí)間,返回的是時(shí)間戳。

二十二、os.path.getctime(filename)

以時(shí)間戳的形式返回文件或目錄的創(chuàng)建時(shí)間,在Unix系統(tǒng)上是文件最近更改的時(shí)間,在Windows上是文件或目錄的創(chuàng)建時(shí)間。

1.基礎(chǔ)題:

檢驗(yàn)給出的路徑是否是一個(gè)文件:os.path.isfile("D:\\test.txt")

檢驗(yàn)給出的路徑是否是一個(gè)目錄:os.path.isdir("D:\\test.txt")

判斷是否是絕對(duì)路徑:os.path.isabs("D:\\test.txt")

檢驗(yàn)給出的路徑是否真地存在:

2.返回一個(gè)路徑的目錄名和文件名 :os.listdir("D:\\")

3.分離文件名與擴(kuò)展名 :os.path.splitext("D:\\test.txt")

4.找出某個(gè)目錄下所有的文件,并在每個(gè)文件中寫入“gloryroad” :

for files in os.walk("D:\\test"):

...? ? print(files)

...

('D:\\test', [], ['a.txt', 'b.txt', 'test.txt', 'test1.txt'])

with open("D:\\test\\a.txt","w+") as f:

...? ? f.write("gloryroad")

5.如果某個(gè)目錄下文件名包含txt后綴名,則把文件后面追加寫一行“被我找到了!”

6. 命題練習(xí):

1) 一個(gè)目錄下只有文件(自己構(gòu)造),拷貝幾個(gè)文件(手工完成)

2 )用listdir函數(shù)獲取所有文件,如果文件的創(chuàng)建時(shí)間是今天,那么就在文件里面寫上文件的路徑、文件名和文件擴(kuò)展名

3) 如果不是今天創(chuàng)建(獲取文件的創(chuàng)建時(shí)間,并轉(zhuǎn)化為時(shí)間格式,判斷是否今天),請(qǐng)刪除

4 )計(jì)算一下這個(gè)程序的執(zhí)行耗時(shí)

7.刪除某個(gè)目錄下的全部文件

8.統(tǒng)計(jì)某個(gè)目錄下文件數(shù)和目錄個(gè)數(shù)

9.使用程序建立一個(gè)多級(jí)的目錄,在每個(gè)目錄下,新建一個(gè)和目錄名字一樣的txt文件

10. 查找某個(gè)目錄下是否存在某個(gè)文件名

11. 用系統(tǒng)命令拷貝文件

12.輸入源文件所在路徑和目標(biāo)目錄路徑,然后實(shí)現(xiàn)文件拷貝功能

13.遍歷某個(gè)目錄下的所有圖片,并在圖片名稱后面增加

14、遍歷指定目錄下的所有文件,找出其中占用空間最大的前3個(gè)文件

15、過濾py源碼中的#注釋,另存為文件result.py,并執(zhí)行result.py,斷言是否執(zhí)行成功

16、文件訪問,提示輸入數(shù)字 N 和文件 F, 然后顯示文件 F 的前 N 行.

17、從命令行接受1個(gè)路徑如:c:\a\b\c\1.py, 實(shí)現(xiàn)1個(gè)函數(shù)創(chuàng)建目錄a\b\c,創(chuàng)建文件1.py,實(shí)現(xiàn)1個(gè)函數(shù)刪除已創(chuàng)建的目錄及文件

18、有一個(gè)ip.txt,里面每行是一個(gè)ip,實(shí)現(xiàn)一個(gè)函數(shù),ping 每個(gè)ip的結(jié)果,把結(jié)果記錄存到ping.txt中,格式為ip:0或ip:1 ,0代表ping成功,1代表ping失敗

19、實(shí)現(xiàn)DOS命令執(zhí)行功能,接受輸入命令并執(zhí)行,然后把執(zhí)行結(jié)果和返回碼打印到屏幕

20、文件訪問

訪問一存在多行的文件,實(shí)現(xiàn)每隔一秒逐行顯示文本內(nèi)容的程序,每次顯示文本文件的 5行, 暫停并向用戶提示“輸入任意字符繼續(xù)”,按回車鍵后繼續(xù)執(zhí)行,直到文件末尾。

顯示文件的格式為:[當(dāng)前時(shí)間] 一行內(nèi)容,比如:[2016-07-08 22:21:51] 999370this is test

Python 函數(shù)makedirs()的mode的用法

Python的makedirs()方法是遞歸目錄創(chuàng)建功能。類似于mkdir(),但使所有中間級(jí)目錄需要包含子目錄。默認(rèn)模式為0777(八進(jìn)制)。但是mode在windows系統(tǒng)是沒用的,linux,unix等系統(tǒng)上跟其權(quán)限的表示是一致的:第一位指定屬主的權(quán)限,第二位指定組權(quán)限,第三位指定其他用戶的權(quán)限,每位通過4(讀)、2(寫)、1(執(zhí)行)三種數(shù)值的和來確定權(quán)限。如6(4+2)代表有讀寫權(quán),7(4+2+1)有讀、寫和執(zhí)行的權(quán)限。

Python其實(shí)很簡(jiǎn)單 第十六章 目錄管理

為實(shí)現(xiàn)“按名存取”,必須建立文件名與輔存空間中物理地址的對(duì)應(yīng)關(guān)系,體現(xiàn)這種對(duì)應(yīng)關(guān)系的數(shù)據(jù)結(jié)構(gòu)稱為文件目錄。文件目錄表目至少要包含文件名、文件的類型、文件的長(zhǎng)度、訪問權(quán)限、建立時(shí)間、訪問時(shí)間和文件存儲(chǔ)地址等內(nèi)容。通過前面一章的介紹,我們已經(jīng)知道在文件信息中已經(jīng)包含了文件名、文件類型訪問權(quán)限等信息,而存儲(chǔ)地址的信息則包含在目錄信息中。

16.1路徑

路徑通常用一個(gè)字符串來表示,可以按照路徑信息定位到一個(gè)目錄或文件。如:“C:UsersAdministratorPictures1.jpg”這個(gè)信息可以非常方便的找到這個(gè)圖片文件,“C:UsersAdministratorPictures”這個(gè)信息可以幫助我們找到更多的圖片文件。

這里所說的“路徑”和上網(wǎng)時(shí)碰到的“地址”含義比較相似,互聯(lián)網(wǎng)就相當(dāng)于將個(gè)人電腦可以訪問的范圍擴(kuò)大了,互聯(lián)網(wǎng)中的地址也是對(duì)應(yīng)某一個(gè)存儲(chǔ)空間的路徑,按照地址可以訪問互聯(lián)網(wǎng)上的信息,就如同按照路徑可以找到計(jì)算機(jī)中的文件一樣。

在Python中,可以導(dǎo)入 os模塊 來進(jìn)行目錄操作。

1、獲取當(dāng)前工作目錄getcwd()函數(shù)

例:

import os

print(os.getcwd())

運(yùn)行結(jié)果:

C:UsersAdministratorAppDataLocalProgramsPythonPython38

這個(gè)路徑是當(dāng)前Python IDLE所在的地址。

2、獲取文件的絕對(duì)路徑abspath()函數(shù)

abspath()函數(shù)是os模塊的子模塊path提供的一個(gè)函數(shù)。用法舉例如下:

import os

print(os.path.abspath(r'test.txt'))

運(yùn)行結(jié)果:

C:UsersAdministratorAppDataLocalProgramsPythonPython38 est.txt

16.2 目錄操作類函數(shù)

1、判斷目錄是否存在exists()函數(shù)

exists()函數(shù)是os模塊的子模塊path中的函數(shù)。使用方法舉例如下:

import os

print(os.path.exists(r'C:UsersAdministratorPictures1.jpeg'))

輸出結(jié)果:

True

2、創(chuàng)建目錄mkdir()函數(shù)和makedirs()函數(shù)

mkdir()函數(shù)和makedirs()函數(shù)都是由os模塊提供的,下面舉例說明用法和區(qū)別。

例1:

import os

path='d:test'

if not os.path.exists(path):

os.makedirs(path)

print('該文件目錄創(chuàng)建成功!')

如果目錄d: est已存在,則不再創(chuàng)建;若不存在,則創(chuàng)建。

例2:

import os

path='d:testtest1test11'

if not os.path.exists(path):

os.makedirs(path)

print('該文件目錄創(chuàng)建成功!')

雖然目錄d: est已存在,但可以在其下繼續(xù)創(chuàng)建子目錄。上面的代碼可以成功地創(chuàng)建d: est est1 est11目錄。

mkdir()函數(shù)和makedirs()函數(shù)用法基本一樣,不同之處在于mkdir()函數(shù)只能能創(chuàng)建一級(jí)目錄。

3、刪除目錄函數(shù)rmdir()函數(shù)

rmdir()函數(shù)是由os模塊提供的。

例如:通過上面的例子已經(jīng)建立了d: est est1 est11目錄,現(xiàn)在去刪除子目錄test11(此子目錄為空目錄),代碼如下:

import os

os.rmdir('d:testtest1test11')

如果要?jiǎng)h除的目錄非空(其下還包含有文件或文件夾),則不能刪除,并且出現(xiàn)Windows文件操作錯(cuò)誤的提示(Python是調(diào)用操作系統(tǒng)命令完成文件和目錄操作的)。譬如d: est目錄下含有有子目錄,則不能對(duì)其進(jìn)行如下刪除操作。

import os

os.rmdir('d:test')

此時(shí),會(huì)出現(xiàn)如下錯(cuò)誤提示:

Traceback (most recent call last):

File "C:/Users/zym/AppData/Local/Programs/Python/Python39/4.py", line 10, in

os.rmdir('d:test')

OSError: [WinError 145] 目錄不是空的。: 'd:test'

4、刪除非空目錄函數(shù)rmtree()函數(shù)

rmtree()函數(shù)是由Python內(nèi)置的標(biāo)準(zhǔn)模塊shutil提供的,可以刪除目錄及目錄下的文件和子目錄。如刪除d: est目錄及其下的子目錄和文件,可用如下代碼:

import shutil

shutil.rmtree('d:test')

5、遍歷目錄walk()函數(shù)

walk()函數(shù)是由os模塊提供的。

語(yǔ)法格式:

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

其中,top是所要遍歷的目錄的地址;topdown為可選參數(shù),為 True時(shí)自上而下遍歷 目錄,為False時(shí)自下而上遍歷目錄,默認(rèn)值為True;onerror為可選參數(shù),用于指定異常處理方式,默認(rèn)為忽略;followlinks為可選參數(shù),如果為 True,則會(huì)遍歷目錄下的快捷方式(linux 下是軟連接 symbolic link )實(shí)際所指的目錄(默認(rèn)關(guān)閉),如果為 False,則優(yōu)先遍歷 top 的子目錄。

該函數(shù)的返回值為一個(gè)三元組(root,dirs,files)。root 所指的是當(dāng)前正在遍歷的這個(gè)文件夾的本身的地址;dirs 是一個(gè) list ,內(nèi)容是該文件夾中所有的目錄的名字(不包括子目錄);files 同樣是 list , 內(nèi)容是該文件夾中所有的文件(不包括子目錄)。

例:遍歷d: est目錄及其子目錄下的所有子目錄和文件:

d: est目錄及其下的子目錄和文件

import os

path='d:test'

tups=os.walk(path) # 函數(shù)walk()的返回值為三元組

for root,dirs,files in tups: # 遍歷這個(gè)三元組

for name in dirs: #遍歷存放目錄值的元組

print('dir:',os.path.join(root,name))

for name in files: #遍歷存放文件名值的元組

print('file:',os.path.join(root,name))

運(yùn)行結(jié)果如下:

dir: d: est est1

dir: d: est est1 est11

dir: d: est est1新建文件夾

file: d: est est1新建文本文檔.txt

file: d: est est1 est11新建文本文檔.txt


標(biāo)題名稱:python函數(shù)目錄創(chuàng)建,python生成目錄樹
URL標(biāo)題:http://weahome.cn/article/hoghcc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部