在 Python 中讀取沒有換行符的檔案
-
在 Python 中使用
strip()
和rstrip()
方法讀取沒有換行符的行 -
在 Python 中使用
splitlines
和split()
方法讀取沒有換行符的行 -
在 Python 中使用
slicing
或[]
運算子讀取沒有換行符的行 -
在 Python 中使用
replace()
方法讀取沒有換行符的行
諸如編輯檔案、開啟檔案和讀取檔案之類的檔案處理可以在 Python 中輕鬆執行。在 Python 中讀取檔案是一項非常常見的任務,任何使用者在對檔案進行任何更改之前都會執行該任務。
在讀取檔案時,換行符\n
用於表示檔案的結尾和下一行的開頭。本教程將演示如何在 Python 中沒有換行符的情況下進行讀行。
在 Python 中使用 strip()
和 rstrip()
方法讀取沒有換行符的行
Python 中的 strip()
方法有助於省略開頭(前導)和結尾(尾隨)的空格。除了空格之外,strip()
方法還包括換行符。
這裡有一個例子,你可以參考。
with open("randomfile.txt", "r") as file:
newline_break = ""
for readline in file:
line_strip = readline.strip()
newline_break += line_strip
print(newline_break)
open()
用於開啟檔案。請注意,strip()
方法將刪除上面示例中開頭和結尾的換行符和空格。為了保留空格並省略換行符,\n
命令作為引數或引數傳遞給 strip()
方法。
我們也可以使用 rstrip()
方法,因為 strip()
方法省略了前導和尾隨空格。另一方面,rstrip()
方法只是刪除尾隨空格或字元。此方法很有用,因為換行符出現在每個字串的末尾。我們也可以通過 \n
來提及換行符。
按照下面的這個例子。
with open("randomfile.txt", "r") as file:
newline_break = ""
for readline in file:
line_strip = line.rstrip('\n')
newline_break += line_strip
print(newline_break)
在 Python 中使用 splitlines
和 split()
方法讀取沒有換行符的行
Python 中的 splitlines()
方法有助於將一組字串拆分為一個列表。字串集合中的每個字串都是列表的一個元素。因此,splitlines()
方法會在出現換行符的地方拆分字串。
with open("randomfile.txt", "r") as file:
readline=file.read().splitlines()
print(readline)
在這裡,請注意沒有提到發生分裂的點。因此,要提及應該手動進行拆分的點,使用 split()
方法。此方法執行與 splitlines()
方法相同的任務,但更精確一些。
with open("randomfile.txt", "r") as file:
readline=file.read().split("\n")
print(readline)
在 Python 中使用 slicing
或 []
運算子讀取沒有換行符的行
Python 中的 slicing
運算子有助於分別訪問序列或字串的不同部分。slicing
運算子定義為:string [starting index : end index : step value]
。
下面是一個你可以參考的例子。
with open("randomfile.txt", "r") as file:
newline_break = ""
for readline in file:
line_strip = line[:-1]
newline_break += line_strip
print(newline_break)
請注意,在上面的示例中,我們在負切片的幫助下刪除了每個字串的最後一個字元,例如,[:-1]
。
在 Python 中使用 replace()
方法讀取沒有換行符的行
顧名思義,replace()
是一個內建的 Python 函式,用於返回一個字串,其中所有出現的子字串都被另一個子字串替換。
參照下面的這個例子。
with open("randomfile.txt", "r") as file:
newline_break = ""
for readline in file:
line_strip = line.replace('\n', " ")
newline_break += line_strip
print(newline_break)
Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.
LinkedIn