中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Python文件處理方法有哪些

發布時間:2021-11-23 09:33:57 來源:億速云 閱讀:252 作者:iii 欄目:大數據

本篇內容主要講解“Python文件處理方法有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python文件處理方法有哪些”吧!

一、讀寫文件

1.1 讀txt文件

(1) 讀取文件中的全部內容
# 打開example.txt文件,并返回文件對象filewith open('example.txt') as file:# 通過read()讀取文件的全部內容,并將其作為一個字符串存儲在all_contents中all_contents = file.read()# 顯示全部內容print(all_contents)

執行該程序后,輸出example.txt文件中的全部內容:

君不見黃河之水天上來,奔流到海不復回。
君不見高堂明鏡悲白發,朝如青絲暮成雪。
人生得意須盡歡,莫使金樽空對月。
天生我材必有用,千金散盡還復來。
(2) 逐行讀取文件中的內容
with open('example.txt') as file:# 遍歷文件中的每一行for line in file:print(line)

執行該程序后,逐行輸出example.txt文件中的每一行內容:

君不見黃河之水天上來,奔流到海不復回。

君不見高堂明鏡悲白發,朝如青絲暮成雪。

人生得意須盡歡,莫使金樽空對月。

天生我材必有用,千金散盡還復來。

容易發現,輸出每一行內容后,都多了一個空行。 這是因為每行的末尾都有一個看不見的換行符,而 print 語句也會加上一個換行符,因此每行末尾都有兩個換行符:一個來自文件,另一個來自 print 語句。要消除這些多余的空白行,可在 print 語句中使用 rstrip()

print(line.rstrip())
(3) 創建一個包含文件各行內容的列表

使用關鍵字 with 時, open() 返回的文件對象只在 with 代碼塊內可用。如果要在 with 代碼塊外訪問文件的內容,可在 with 代碼塊內將文件的各行存儲在一個列表中,并在 with 代碼塊外使用該列表:你可以立即處理文件的各個部分,也可推遲到程序后面再處理。

下面的示例在 with 結構中將文件 example.txt 的各行存儲在一個列表中,再在 with 代碼塊外打印它們:

with open("example.txt") as file:# 從文件中讀取每一行,并將其存儲在一個列表lines中lines = file.readlines()# 逐行打印內容for line in lines:print(line.rstrip())

執行該程序后,逐行輸出example.txt文件中的每一行內容:

君不見黃河之水天上來,奔流到海不復回。
君不見高堂明鏡悲白發,朝如青絲暮成雪。
人生得意須盡歡,莫使金樽空對月。
天生我材必有用,千金散盡還復來。

1.2 寫txt文件

(1) 寫入空文件

在前面的示例中,我們使用的open()其實包含兩個參數:

  • 第一個參數filename。表示到打開或者寫入的文件名;

  • 第二個參數mode。模式有三種選擇:讀取模式(‘r’)、寫入模式(‘w’)、附加模式(‘a’)。如果你省略了模式實參, Python 將以默認的只讀模式打開文件。

要將文本寫入文件,你在調用 open() 時需要提供另一個實參——寫入模式(‘w’),告訴 Python 你要寫入打開的文件。為明白其中的工作原理,我們來將一條簡單的消息存儲到文件中:

# 以寫入模式打開文件with open("writeFile.txt", "w") as file:# write()將一個字符串寫入文件file.write("I Love Python!")

執行后,可以發現在你的工程目錄下產生了一個新的文件writeFile.txt,該文件中的內容是:I Love Python!

注意:Python 只能將字符串寫入文本文件。要將數值數據存儲到文本文件中,必須先使用函數 str() 將其轉換為字符串格式。

(2) 寫入多行

函數 write() 不會在你寫入的文本末尾添加換行符,因此你可以在寫入時指定換行符:

# 以寫入模式打開文件with open("writeFile.txt", "w") as file:# write()將一個字符串寫入文件,并換行file.write("I Love Python!\n")file.write("AI Jun Love Python too!\n")

執行后,可以發現生成的新文件writeFile.txt中有兩行內容:

I Love Python!
AI Jun Love Python too!

注意:如果在工程目錄下已有writeFile.txt文件,則新寫入的內容會覆蓋原來的所有內容。

(3) 文件添加新內容

如果你要給文件添加內容,而不是覆蓋原有的內容,可以 附加模式 打開文件。你以附加模式打開文件時, Python 不會在返回文件對象前清空文件,而你寫入到文件的行都將添加到文件末尾。如果指定的文件不存在, Python 將為你創建一個空文件。

接下來,在既有文件 writeFile.txt 中再添加一些新的內容:

with open("writeFile.txt", "a") as file:# 在原來writeFile.txt文件中新添內容file.write("I Love Python beacause it can work well!")

執行后,在原內容中新增了一行:

I Love Python!
AI Jun Love Python too!
I Love Python beacause it can work well!

二、存儲數據

模塊 json 讓你能夠將簡單的 Python 數據結構轉儲到文件中,并在程序再次運行時加載該文件中的數據。你還可以使用 json 在 Python 程序之間分享數據。更重要的是, JSON 數據格式并非 Python 專用的,這讓你能夠將以 JSON 格式存儲的數據與使用其他編程語言的人分享。這是一種輕便格式,很有用,也易于學習。

JSON ( JavaScript Object Notation )格式最初是為 JavaScript 開發的,但隨后成了一種常見格式,被包括 Python 在內的眾多語言采用。

2.1 寫入json文件

使用 json.dump() 將數據存儲到JSON文件中:

# 導入模塊 jsonimport json# 新建一個列表numbers = [1,2,3,4,5]# 以寫入模式打開這個文件new.jsonwith open("new.json", "w") as file:# 使用json.dump()將數字列表存儲到文件中json.dump(numbers, file)

執行后,在工程目錄下生成一個新的文件new.json,文件中存儲著新添的數據:[1, 2, 3, 4, 5]

注:json是Python中的內置模塊,在編寫相關程序時,可以直接使用import導入,不需要額外的安裝json庫。

2.2 向json文件中添加內容

以寫入模式打開文件,寫入的內容會覆蓋原來文件中的內容。有時希望在源文件中添加新的內容,這時就必須以附加模式打開文件,如下所示:

# 導入模塊 jsonimport json# 新建一個列表list = [6, 7, 8, 9, 10]# 以附加模式打開這個文件new.jsonwith open("new.json", "a") as file:# 使用json.dump()將數字列表存儲到文件中json.dump(list, file)

執行完后,程序在原來的new.json文件中新添了內容:[6, 7, 8, 9, 10]

2.3 讀取json文件

接下來,使用函數 json.load() 將JSON文件中的列表讀取到內存中:

# 導入模塊 jsonimport json# 以只讀模式打開這個文件new.jsonwith open("new.json", "r") as file:# 使用json.load()將JSON文件中的內容讀取到內存list = json.load(file)print("JSON文件中存儲的內容是:", list)

運行結果:

JSON文件中存儲的內容是: [1, 2, 3, 4, 5]

到此,相信大家對“Python文件處理方法有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

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

AI

桐柏县| 武邑县| 墨脱县| 岢岚县| 年辖:市辖区| 冷水江市| 定安县| 永州市| 宿迁市| 兴义市| 杨浦区| 乐山市| 马公市| 怀安县| 顺昌县| 桐梓县| 永德县| 清河县| 上杭县| 临泉县| 永顺县| 寿光市| 蒲江县| 武汉市| 宿州市| 宿松县| 高碑店市| 白沙| 南部县| 武宁县| 隆尧县| 洛扎县| 商城县| 开鲁县| 盐津县| 鄱阳县| 韩城市| 新乡市| 墨竹工卡县| 合水县| 吉安市|