如何在 Python 中將檔案分割成列表?


Python 是一種複雜的多用途程式語言,已成為許多領域的通用語言,尤其是在分析、Web 開發、自動化等領域。其固有的易用性和適應性使其成為初學者和經驗豐富的程式設計師的首選。Python 的一項無與倫比的優勢是它能夠操作檔案,允許使用者輕鬆地讀取、編寫、編輯和組織檔案。在本討論中,我們將探討其中一個方面:將檔案分解成陣列。

理解 Python 中的檔案和陣列

在 Python 領域,檔案表示儲存介質上的特定位置,其中包含相關資料。它作為一種在非易失性儲存器(如硬碟)中永久儲存資料的方式。Python 支援多種檔案格式,包括文字檔案(.txt)、PDF 檔案(.pdf)、CSV 檔案(.csv)等。

相反,陣列構成了 Python 的內建資料結構之一。它可以容納各種元素,包括數字、字串,甚至其他陣列。陣列是可變的,這意味著它們可以在建立後進行修改。

為什麼要將檔案分解成陣列?

將檔案分割成陣列是一項常見操作,尤其是在資料分析任務中。此操作使程式設計師能夠單獨處理檔案的每一行或每個元素,這在執行資料探索、機器學習任務或僅管理文字資料時至關重要。

使用 Python 將檔案分解成陣列

Python 使將檔案分割成陣列的任務變得非常簡單。讓我們逐步遍歷此過程,使用文字檔案作為示例。

  • 訪問檔案

  • 首先,您應該訪問檔案。Python 提供了一個名為 open() 的內建函式,它以檔名和模式作為引數。模式是一個字串,指定如何訪問檔案 -

"r" - 讀取模式(預設)

"w" - 寫入模式

"a" - 追加模式

"x" - 建立模式,它將建立一個檔案,如果檔案已存在則引發錯誤

"t" - 文字模式(預設)

"b" - 二進位制模式

使用以下語句訪問檔案

document = open("mydocument.txt", "r")
  • 解釋檔案

訪問檔案後,您可以使用 read() 函式解釋其內容。此函式將檔案的內容解釋為單個大型字串。

content = document.read()
  • 將檔案內容分解成陣列

接下來,我們的目標是將檔案的內容分解成陣列。split() 函式是一個 Python 字串方法,它將字串分解成一個數組,其中每個單詞都成為陣列項。預設情況下,它在每個空格處進行分割。但是,如果您打算在每個換行符處進行分割,則可以將“\n”作為分隔符傳遞。

rows = content.split("\n")
  • 關閉檔案

最後,養成在完成檔案操作後始終關閉檔案的良好習慣。這可以透過使用 close() 方法來實現 -

document.close()

就是這樣!您已成功在 Python 中將檔案分解成陣列。

使用 readlines() 的更簡化方法

Python 還提供了一種更簡化、更高效的方法來使用 readlines() 方法將檔案分解成陣列。此方法解釋檔案中的所有行並將它們作為字串返回,其中每個字串表示檔案中的一個行。

with open("mydocument.txt", "r") as document:
rows = document.readlines()

假設您有一個名為 mydocument.txt 的檔案,其內容如下 -

第 1 行

第 2 行

第 3 行

如果您執行上述 Python 程式碼片段,它將解釋 mydocument.txt 中的內容並將其作為字串陣列儲存在變數“rows”中。“rows”的內容將類似於以下輸出 -

輸出

['Row 1\n', 'Row 2\n', 'Row 3\n']

陣列中的每個字串都包含檔案中的一個行。每個字串末尾的 \n 是一個換行符,表示原始檔案中的換行符。

在此程式碼中,“with”關鍵字用於在不再需要檔案後自動關閉檔案。這被認為是 Python 中檔案處理的最佳實踐,確保資源得到適當清理。

結論

Python 的固有清晰度和優雅性使檔案處理任務(如將檔案分解成陣列)變得直接而高效。瞭解如何操作檔案是 Python 程式設計中一項重要的技能,它為更高階的任務(包括資料探索和機器學習)鋪平了道路。因此,繼續磨練您的技能,堅持您的實驗,並記住:Python 的力量掌握在您的手中。編碼愉快!

更新於: 2023年8月9日

270 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.