最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python的open函數(shù)使用案例代碼

 更新時(shí)間:2023年02月10日 08:23:27   作者:靜靜超愛(ài)滿滿  
python打開文件使用open()函數(shù),返回一個(gè)指向文件的指針,在python中使用open函數(shù)對(duì)文件進(jìn)行處理,這篇文章主要介紹了python中的open函數(shù)使用,需要的朋友可以參考下

在python中使用open函數(shù)對(duì)文件進(jìn)行處理。

1.open()

python打開文件使用open()函數(shù),返回一個(gè)指向文件的指針。該函數(shù)常用以下三個(gè)參數(shù)。

1.1 參數(shù)1

目標(biāo)文件的路徑+名字。最好使用r"路徑"這種原始字符串寫法,防止有轉(zhuǎn)義字符影響實(shí)際路徑。

1.2 參數(shù)2

操作文件的方式mode=‘方式’。mode=可以省略。下面對(duì)操作文件的方式進(jìn)行詳細(xì)說(shuō)明:

(1)r

以只讀方式打開文件。文件的指針將會(huì)放在文件的開頭。這是open默認(rèn)模式。如果文件不存在,會(huì)報(bào)錯(cuò)。

(2)rb

以二進(jìn)制只讀方式打開一個(gè)文件。文件指針將會(huì)放在文件的開頭。注意這種方式不能使用encoding,不然會(huì)報(bào)錯(cuò)。

同樣的內(nèi)容使用一般方式和二進(jìn)制的方式打開。

fp = open(r"E:\test.txt",'r',encoding='utf-8')
content = fp.readline()
print(content)

輸出:加油,好好干!

fp = open(r"E:\test.txt",'rb')
content = fp.readline()
print(content)

輸出:b’\xe5\x8a\xa0\xe6\xb2\xb9\xef\xbc\x8c\xe5\xa5\xbd\xe5\xa5\xbd\xe5\xb9\xb2\xef\xbc\x81’

(3)r+

以讀寫方式打開一個(gè)文件。文件指針將會(huì)放在文件的開頭。直接寫入會(huì)覆蓋文件開頭的內(nèi)容。

原始內(nèi)容:

加油,好好干!別放棄

fp = open(r"E:\test.txt",'r+',encoding='utf-8')
fp.write("開心吧")
fp.close()
fp = open(r"E:\test.txt", 'r', encoding='utf-8')
content = fp.readline()
print(content)
fp.close()

執(zhí)行后:

開心吧好好干!別放棄

(4)rb+

以二進(jìn)制讀寫方式打開一個(gè)文件。文件指針將會(huì)放在文件的開頭。

(5)w

以寫入打開一個(gè)文件。如果該文件已存在,則將其覆蓋。如果該文件不存在,則創(chuàng)建新文件。

(6)wb

以二進(jìn)制寫入方式打開一個(gè)文件。如果該文件已存在,則將其覆蓋。如果該文件不存在,則創(chuàng)建新文件。
(7)w+

以讀寫方式打開一個(gè)文件。如果該文件已存在,則將其覆蓋。如果該文件不存在,則創(chuàng)建新文件。

原始內(nèi)容:

開心吧好好干!別放棄

fp = open(r"E:\test.txt",'w+',encoding='utf-8')
fp.write("認(rèn)真一點(diǎn)")
fp.close()
fp = open(r"E:\test.txt", 'r', encoding='utf-8')
content = fp.readline()
print(content)
fp.close()

執(zhí)行后直接覆蓋所有原始內(nèi)容:

認(rèn)真一點(diǎn)

(8)wb+

以二進(jìn)制讀寫格式打開一個(gè)文件。如果該文件已存在,則將其覆蓋。如果該文件不存在,則創(chuàng)建新文件。

(9)a

以追加方式打開一個(gè)文件。如果文件已存在,文件指針將會(huì)放在文件結(jié)尾。即:新的內(nèi)容將會(huì)被追加到已有的內(nèi)容之后。如果該文件不存在,則創(chuàng)建新文件可用于寫入。注意,不能讀,讀會(huì)出錯(cuò)。

(10)a+

以讀寫方式打開一個(gè)文件。如果文件已存在,文件指針將會(huì)放在文件結(jié)尾。即:新的內(nèi)容將會(huì)被追加到已有的內(nèi)容之后。如果該文件不存在,則創(chuàng)建新文件可用于讀寫。

原始內(nèi)容:

認(rèn)真一點(diǎn)

fp = open(r"E:\test.txt",'a+',encoding='utf-8')
fp.write("你就離成功近一點(diǎn)")
fp.close()
fp = open(r"E:\test.txt", 'r', encoding='utf-8')
content = fp.readline()
print(content)
fp.close()

執(zhí)行后追加:

認(rèn)真一點(diǎn)你就離成功近一點(diǎn)

這時(shí)候,指針?lè)旁谖募膊?,直接讀取會(huì)沒(méi)有內(nèi)容,需要將指針移動(dòng)(seek)到文件的頭部:

with open(r"E:\test.txt",'a+',encoding='utf-8') as fp:
    fp.seek(0,0)
    content = fp.readline()
    print(content)

(11)ab+

以二進(jìn)制讀寫方式打開一個(gè)文件。如果文件已存在,文件指針將會(huì)放在文件結(jié)尾。即:新的內(nèi)容將會(huì)被追加到已有的內(nèi)容之后。如果該文件不存在,則創(chuàng)建新文件可用于讀寫。

1.3 參數(shù)3

編碼的方式,常用utf-8,gbk等。如:encoding=‘utf-8’

如果是二進(jìn)制的方式,這個(gè)參數(shù)不需要填,填了還會(huì)報(bào)錯(cuò)。

2.with open() as

這是open()的一種升級(jí)用法,控制塊結(jié)束的時(shí)候文件會(huì)自動(dòng)關(guān)閉,不需要顯示地調(diào)用close()關(guān)閉文件。這種方法更方便使用,所以推薦大家使用這種方法。

with open(r"E:\test.txt",'r',encoding='utf-8') as fp:
    content = fp.readlines()

3.open函數(shù)常用的方法

3.1 讀

文件內(nèi)容:

認(rèn)真一點(diǎn)你就離成功近一點(diǎn)
啊啊啊啊啊啊啊啊啊啊啊
fffffffffff

(1)read()

一次性讀取整個(gè)文件內(nèi)容,將整個(gè)文件放到一個(gè)字符串中。使用read(size)方法,返回文件中的前size個(gè)字符:

content = fp.read()

輸出:

認(rèn)真一點(diǎn)你就離成功近一點(diǎn)
啊啊啊啊啊啊啊啊啊啊啊
fffffffffff

(2)readline()

每次讀取一行內(nèi)容。

content = fp.readline()

輸出:

認(rèn)真一點(diǎn)你就離成功近一點(diǎn)

(3)readlines()

一次性讀取整個(gè)文件內(nèi)容到一個(gè)迭代器以供我們遍歷(讀取到一個(gè)list中,以供使用,比較方便)

content = fp.readlines()

輸出;

[‘認(rèn)真一點(diǎn)你就離成功近一點(diǎn)\n’, ‘啊啊啊啊啊啊啊啊啊啊啊\n’, ‘fffffffffff’]

3.2 寫

(1)write()

fp.write()的參數(shù)必須是一個(gè)字符串,就是你要寫入文件的內(nèi)容.

(2)writelines()

fp.writelines()的參數(shù)可以是列表,也可以是字符串。

3.3 獲取文件讀寫類型

如果文件可寫,則 fp.writable() 方法返回 True,否則返回 False。

如果文件是可讀的,則 fp.readable() 方法返回 True,否則返回 False。

比如:以w方式打開的文件,fp.readable()返回False,fp.writable()返回True。

3.4 指針移動(dòng)

seek

f.seek(偏移量,[起始位置])

起始位置的三種取值:0文件開頭,1當(dāng)前位置,2文件末尾

例子見1.3中(10)a+

3.5 當(dāng)前指針位置

tell()返回一個(gè)整數(shù),表示當(dāng)前文件指針的位置(就是到文件頭的字節(jié)數(shù)).

如果是utf-8編碼,那么一個(gè)中文字符占用三個(gè)字節(jié),一個(gè)英文字符占用一個(gè)字節(jié)。如果是gbk編碼,那么一個(gè)中文字符占用兩個(gè)字節(jié),一個(gè)英文字符占用一個(gè)字節(jié)。

with open(r"E:\test.txt",'a+',encoding='utf-8') as fp:
    content = fp.tell()
    print(content)

打?。?0

3.6 truncate

truncate(size) 方法用于截?cái)辔募?,如果指定了可選參數(shù) size,則表示截?cái)辔募?size 個(gè)字符。 如果沒(méi)有指定 size,則從當(dāng)前位置起截?cái)?;截?cái)嘀?size 后面的所有字符被刪除。

到此這篇關(guān)于python的open函數(shù)使用的文章就介紹到這了,更多相關(guān)python的open函數(shù)使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • pygame游戲之旅 添加鍵盤按鍵的方法

    pygame游戲之旅 添加鍵盤按鍵的方法

    這篇文章主要為大家詳細(xì)介紹了pygame游戲之旅的第4篇,教大家如何添加鍵盤按鍵,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • PyQt5通過(guò)信號(hào)實(shí)現(xiàn)MVC的示例

    PyQt5通過(guò)信號(hào)實(shí)現(xiàn)MVC的示例

    這篇文章主要介紹了PyQt5通過(guò)信號(hào)實(shí)現(xiàn)MVC的示例,幫助大家更好的理解和使用pyqt5,感興趣的朋友可以了解下
    2021-02-02
  • 使用Python根據(jù)一個(gè)列表的順序?qū)ζ渌斜磉M(jìn)行排序

    使用Python根據(jù)一個(gè)列表的順序?qū)ζ渌斜磉M(jìn)行排序

    這篇文章主要介紹了使用Python根據(jù)一個(gè)列表的順序?qū)ζ渌斜磉M(jìn)行排序,根據(jù)列表B中每個(gè)元素的下標(biāo)來(lái)獲取列表A中對(duì)應(yīng)位置的元素,將其作為排序依據(jù)即可,需要的朋友可以參考下
    2023-10-10
  • 簡(jiǎn)潔的十分鐘Python入門教程

    簡(jiǎn)潔的十分鐘Python入門教程

    這篇文章主要介紹了簡(jiǎn)潔的十分鐘Python入門教程,Python語(yǔ)言本身的簡(jiǎn)潔也使得網(wǎng)絡(luò)上各種Python快門入門教程有著很高的人氣,本文是國(guó)內(nèi)此類其中的一篇,需要的朋友可以參考下
    2015-04-04
  • Python實(shí)現(xiàn)異常值自動(dòng)檢測(cè)的案例分享

    Python實(shí)現(xiàn)異常值自動(dòng)檢測(cè)的案例分享

    在數(shù)據(jù)分析和機(jī)器學(xué)習(xí)中,異常值的檢測(cè)是一個(gè)關(guān)鍵步驟,它有助于識(shí)別數(shù)據(jù)中的異常模式和離群點(diǎn),本文將介紹Python中異常值檢測(cè)的實(shí)戰(zhàn)案例,使用一些常見的技術(shù)和庫(kù),為大家提供全面的示例代碼和詳細(xì)解釋
    2024-01-01
  • 使用Python3 編寫簡(jiǎn)單信用卡管理程序

    使用Python3 編寫簡(jiǎn)單信用卡管理程序

    這篇文章主要介紹了使用Python3 編寫簡(jiǎn)單信用卡管理程序的代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2016-12-12
  • Python 利用pydub庫(kù)操作音頻文件的方法

    Python 利用pydub庫(kù)操作音頻文件的方法

    今天小編就為大家分享一篇Python 利用pydub庫(kù)操作音頻文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • python庫(kù)使用Fire庫(kù)生成命令行參數(shù)

    python庫(kù)使用Fire庫(kù)生成命令行參數(shù)

    Python Fire是一個(gè)開源庫(kù),能把Python對(duì)象轉(zhuǎn)換為命令行界面,F(xiàn)ire庫(kù)是一個(gè)非常有用的工具,它可以幫助開發(fā)人員創(chuàng)建命令行界面,并且可以將任何Python對(duì)象轉(zhuǎn)換為命令行界面,這篇文章主要介紹了python庫(kù)使用Fire庫(kù)生成命令行參數(shù),需要的朋友可以參考下
    2024-02-02
  • python爬蟲爬取筆趣網(wǎng)小說(shuō)網(wǎng)站過(guò)程圖解

    python爬蟲爬取筆趣網(wǎng)小說(shuō)網(wǎng)站過(guò)程圖解

    這篇文章主要介紹了python爬蟲爬取筆趣網(wǎng)小說(shuō)網(wǎng)站過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Python基礎(chǔ)學(xué)習(xí)之時(shí)間轉(zhuǎn)換函數(shù)用法詳解

    Python基礎(chǔ)學(xué)習(xí)之時(shí)間轉(zhuǎn)換函數(shù)用法詳解

    這篇文章主要介紹了Python基礎(chǔ)學(xué)習(xí)之時(shí)間轉(zhuǎn)換函數(shù)用法,結(jié)合實(shí)例形式分析了Python常見的日期時(shí)間獲取、轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下
    2019-06-06

最新評(píng)論

师宗县| 咸阳市| 湖口县| 鹤峰县| 蛟河市| 罗江县| 昂仁县| 横山县| 台湾省| 辉县市| 南宁市| 华蓥市| 彭山县| 涪陵区| 广汉市| 河源市| 随州市| 华容县| 湘潭县| 德庆县| 临清市| 莆田市| 沽源县| 青海省| 巴塘县| 宿迁市| 阿鲁科尔沁旗| 松原市| 蒙城县| 精河县| 陇川县| 鹤峰县| 正宁县| 郧西县| 五常市| 伊宁市| 上虞市| 泸水县| 巨鹿县| 徐闻县| 镶黄旗|