欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析使用Python操作文件

 更新時間:2017年07月31日 08:47:01   作者:谷雨yun  
文件操作對編程語言的重要性不用多說,如果數(shù)據(jù)不能持久保存,信息技術(shù)也就失去了意義。按照本人經(jīng)驗(yàn),IO也是蠻頭疼的一件事,因?yàn)椴粫玫锰?,所以總是記不住API,每次都要重新google就會打斷思路,還不一定每次都快速得到正確的文章。

1. file=open('xxx.txt', encoding='utf-8'),open()函數(shù)是Python內(nèi)置的用于對文件的讀寫操作,返回的是文件的流對象(而不是文件本身,所以使用的方法都是流對象的方法)。使用這個函數(shù)時推薦指定encoding參數(shù)(Python2.7.x中好像不支持),因?yàn)镻ython代碼在不同的平臺環(huán)境中使用的默認(rèn)編碼方式不同,有可能會發(fā)生編譯出錯的問題。

2. 在open中的第一個文件名的的參數(shù)中,包含的路徑表示雖然可以根據(jù)不同的環(huán)境使用斜杠和反斜杠,但在Python中表路徑時,斜杠都是正確的。

3. file(流對象,open的默認(rèn)模式下的返回值)的一些方法,使用for循環(huán)對file進(jìn)行迭代時,每次迭代都會自動分離出一行(效果相當(dāng)于對readlines結(jié)果的for循環(huán)遍歷):
•file.name:獲取文件的文件名(包含路徑),即傳入open文件名參數(shù);
•file.encoding:獲取文件的編碼方式;
•file.mode:獲取文件的訪問方式,若沒有指定這個參數(shù),open的默認(rèn)訪問方式為只讀“r”;
•file.closed:返回文件是否關(guān)閉的狀態(tài);
•file.close():關(guān)閉文件(使用完一定及時使用這個函數(shù)關(guān)閉文件);
•file.read():從當(dāng)前定位(一般就是文件開始處)獲取文件內(nèi)容,返回整個文件內(nèi)容的字符串(此時定位在文件尾,若再使用read()方法,會返回空字符串,因?yàn)橐呀?jīng)到文件尾了),若指定了需要獲取的 字符 數(shù)(可以給read方法傳入?yún)?shù),比如:read(3)表示從當(dāng)前定位往后讀取3個字符),則返回指定字符數(shù)的字符串。注意不能從一個字符的中間字節(jié)處讀取,因?yàn)橛械淖址ū热缰形模┑谋硎静恢挂粋€字節(jié),而定位是以字節(jié)來計算位置的,read()是以字符來計數(shù)的;
•file.seek(n):使定位到特定 字節(jié) 處(若使用read()方法讀完文件后還想再讀取一次文件,可以使用seek(0)重新定位到文件開始處再讀?。?;
•file.tell():返回當(dāng)前定位的字節(jié)位置;
•file.readline():讀取文件中的一行,并定位到下一行的開始處;
•file.readlines():讀取文件中的所有行,返回所有行為元素組成的列表;

4. 使用open進(jìn)行文件操作使建議使用with創(chuàng)建運(yùn)行環(huán)境,可以不用close()方法關(guān)閉文件,無論在文件使用中遇到什么問題都能安全的退出,即使發(fā)生錯誤,退出運(yùn)行時環(huán)境時也能安全退出文件并給出報錯信息。

# 使用with創(chuàng)建運(yùn)行時環(huán)境
with open('xxx.text', encoding='utf-8') as file:
  file_content = file.read()
  file.seek(0)
  file_ten_characters = file.read(10)
  print(file_content)
  print(file_ten_characters) #執(zhí)行完with中的代碼后自動退出運(yùn)行時環(huán)境

相關(guān)文章

  • jupyter %matplotlib inline報錯TypeError:print_svg() got an unexpected keyword argument‘orientation‘問題

    jupyter %matplotlib inline報錯TypeError:print_svg()&

    在Jupyter Notebook使用matplotlib時出現(xiàn)TypeError錯誤,一般是由于ipython和matplotlib版本不兼容造成的,通過安裝ipympl并將魔法命令替換為%matplotlib ipympl,可以解決這個問題
    2024-09-09
  • python爬蟲selenium模塊詳解

    python爬蟲selenium模塊詳解

    這篇文章主要介紹了python爬蟲selenium模塊詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Python?動態(tài)綁定屬性和方法?

    Python?動態(tài)綁定屬性和方法?

    這篇文章主要介紹了Python?動態(tài)綁定屬性和方法,?動態(tài)語言與靜態(tài)語言有很多不同,最大的特性之一就是可以實(shí)現(xiàn)動態(tài)的對類和實(shí)例進(jìn)行修改,在Python中,我們創(chuàng)建了一個類后可以對實(shí)例和類綁定心的方法或者屬性,實(shí)現(xiàn)動態(tài)綁定,下面詳細(xì)介紹需要的朋友可以參考一下
    2022-03-03
  • Python3 socket同步通信簡單示例

    Python3 socket同步通信簡單示例

    這篇文章主要介紹了Python3 socket同步通信功能,結(jié)合簡單實(shí)例形式分析了Python socket同步通信客戶端與服務(wù)器端實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • TorchVision Transforms API目標(biāo)檢測實(shí)例語義分割視頻類

    TorchVision Transforms API目標(biāo)檢測實(shí)例語義分割視頻類

    這篇文章主要為大家介紹了TorchVision Transforms API大升級,支持目標(biāo)檢測、實(shí)例/語義分割及視頻類任務(wù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Python獲取數(shù)據(jù)庫數(shù)據(jù)并保存在excel表格中的方法

    Python獲取數(shù)據(jù)庫數(shù)據(jù)并保存在excel表格中的方法

    今天小編就為大家分享一篇Python獲取數(shù)據(jù)庫數(shù)據(jù)并保存在excel表格中的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • OpenCV圖像縮放之cv.resize()函數(shù)詳解

    OpenCV圖像縮放之cv.resize()函數(shù)詳解

    resize函數(shù)opencv中專門用來調(diào)整圖像大小的函數(shù),下面這篇文章主要給大家介紹了關(guān)于OpenCV圖像縮放之cv.resize()函數(shù)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • Python操作dict時避免出現(xiàn)KeyError的幾種解決方法

    Python操作dict時避免出現(xiàn)KeyError的幾種解決方法

    這篇文章主要介紹了Python操作dict時避免出現(xiàn)KeyError的幾種解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • PyQt5實(shí)現(xiàn)簡單的計算器

    PyQt5實(shí)現(xiàn)簡單的計算器

    這篇文章主要為大家詳細(xì)介紹了PyQt5實(shí)現(xiàn)簡單的計算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • Python基本數(shù)據(jù)類型詳細(xì)介紹

    Python基本數(shù)據(jù)類型詳細(xì)介紹

    Python提供的基本數(shù)據(jù)類型主要有:布爾類型、整型、浮點(diǎn)型、字符串、列表、元組、集合、字典等等
    2014-03-03

最新評論