溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python知識之os模塊學習

發(fā)布時間:2020-02-28 13:50:47 來源:網絡 閱讀:313 作者:方丈夢遺 欄目:編程語言

本篇為python視頻教程中有關于os模塊部分的基礎講解,特意貼心的為大家省去了繁瑣的定義講解,直接用簡單的代碼來表示os模塊,話不多說,直接進入正題。

1.os模塊

對于文件和目錄進行處理

目錄:就是文件夾

屬性:

os.name:查看當前系統(tǒng)的類型;

如果是windows ---> nt

如果是max ---> posix

os.environ:返回當前系統(tǒng)的環(huán)境變量(所有)

函數(shù):

os.environ.get():獲取指定的某一個環(huán)境變量

路徑分類:

絕對路徑:帶盤符根目錄的就是絕對路徑

相對路徑:相對于某個文件(參照物)所得到的一個路徑值; 特點:書寫的時候不帶盤符的

os.getcwd():返回當前正在執(zhí)行的.py文件所對應的完整路徑(絕對路徑)

os.listdir(path):將path路徑下的所有文件和目錄顯示

os.mkdir(path):創(chuàng)建單層文件夾,此方法只能創(chuàng)建目錄,如果目錄已經存在,創(chuàng)建失敗,報錯

os.makedirs(path):創(chuàng)建多層文件夾(級聯(lián)新建),此方法也只能創(chuàng)建目錄,如果目錄已經存在,創(chuàng)建失敗,報錯

os.rmdir(path):刪除單層文件夾,此方法只能刪除目錄,如果目錄不存在,刪除失敗,報錯:FileNotFoundError

os.removedirs(path):刪除多層文件夾(級聯(lián)刪除),此方法也只能刪除目錄,如果目錄不存在,創(chuàng)建失敗,報錯

os.remove(path):刪除文件,如果文件不存在,報錯!【注意】這個方法只能刪除文件不能刪除目錄

os.rename(old, new):可以給文件或者目錄重命名

os.system():執(zhí)行系統(tǒng)指令:cls、ipconfig、dir。。。

os.path.join(path, fileName):將path和fileName中的數(shù)據拼接稱為一個新的路徑,以字符串的形式返回

os.path.isdir(path):判斷path對應的路徑內容是否為一個目錄,如果是,返回True;反之,返回False

os.path.isfile(path):判斷path對應的路徑內容是否為一個文件,如果是,返回True;反之,返回False

os.path.exists(path):判斷path對應的路徑內容是否存在,如果存在,返回True;反之,返回False

os.path.getsize(path):對path對應的路徑內容進行容量檢測,并且返回字節(jié)量

os.path.basename(path):傳入一個路徑值,將此路徑的最后一個/后面的部分返回

os.path.dirname(path):傳入一個路徑值,將此路徑的最后一個/前面的部分返回

os.path.split(path):傳入一個路徑值,將此路徑的最后一個/的前面部分放入到元祖的第一個元素中,

/后面的部分放入到元祖的第二個元素中

os.path.splitext(path):傳入一個路徑值,將此路徑的最后一個.的前面部分放入到元祖的第一個元素中,

.以及后面的部分放入元祖的第二個元素中?

--------------------------------------------------------------------------

1.字符集(字符編碼):

ascii碼:

美國的標準碼,范圍:自己去找找看

unicode碼:

萬國碼,它可以包含中文,但是很可惜,它不被通用(流行)

utf-8碼:

計算機中使用最為流行,它包含了之前unicode中的內容并且擴展了,

它同樣可以保存中文

utf-8碼保存中文字符,一個漢字占用3個字節(jié),

gbk碼:

我們中國的碼表,它同樣繼承了gb2312,主要用于一些中文的系統(tǒng)

gbk保存中文字符,1個漢字占用內存2個字節(jié),

2.字節(jié)和字符

記?。河嬎銠C中一切皆字節(jié)(存儲方面)

字符:我們使用文本編輯器打開,能夠看得懂的(不會亂碼),就是字符文件

字節(jié):我們使用文本編輯器打開,不能夠看懂的,就是字節(jié)文件

思考:.doc結尾的文件是字符文件嗎?

不是;

3.文件讀取

有規(guī)定的步驟:

1).打開文件

2).操作數(shù)據(讀、寫)

3).關閉文件??? **

打開文件:

fp= open(path, 打開方式, encoding=,errors='Ignore')

操作數(shù)據:

打開方式:

'r':表示只讀字符(readonly)

#'r+':在只讀的功能下,在追加一個寫的功能

'w':表示只寫字符(readwrite),第一次寫完,如果沒有關閉文件,繼續(xù)寫,那么會將原本的內容覆蓋

#'w+':在只寫的功能下,在追加一個讀的功能

'a':表示追加內容

#'a+':在保留追加內容的同時,新增了一個讀的功能

'rb':表示只讀字節(jié)(二進制數(shù)據)

'wb':表示只寫字節(jié)(二進制數(shù)據)

encoding:

編碼集如果不顯示定義,對應的就是:gbk

我們也可以根據自己的需要,定義譬如:utf-8

errors:

如果不寫,默認是報錯(編解碼不一致)

我們也可以定義為ignore,這樣就不會報錯了,但是會出現(xiàn)亂碼

編碼&解碼:

編碼:程序 ---> 文件

解碼:文件 ---> 程序

記?。喝绻幋a和解碼不一致,一定會亂碼(中文情況下)

讀取文件中的數(shù)據:

fp= open(path, ‘r’)

content= fp.read()?????????? #讀取全部內容

content= fp.read(num)??????????? #讀取num個字節(jié)數(shù)

content= fp.readline()????????????? #讀取一行數(shù)據

content= fp.readlines()?? #讀取所有行,以一個列表的形式返回

print(content)??????????????????? #打印讀取到的內容

【注意】讀文件,如果文件不存在,直接報錯:FileNotFoundError

寫入數(shù)據到文件中:

fw= open(path, 'w')

fw.write(str1)??????????????????? #將變量str1中的內容寫入到path對應的文件中(覆蓋)

【注意】寫文件,如果文件不存在,先創(chuàng)建文件,再寫入內容;如果存在了,將以前的內容覆蓋

fw = open(path, 'a')

fw.write(str1)??????????????????? #將變量str1中的內容寫入到path對應的文件中(追加)

關閉文件:

fp.close()?????????????????? #關閉文件(釋放資源)

以上就是關于Python視頻教程中的os模塊講解,同學們在學習的時候注意我上面標注【注意】的部分和errors的部分,以免出現(xiàn)問題不知道如何解決。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI