簡體   English   中英

在python中逐行解析文本

[英]Parse text line by line in python

我只是想讓我的程序讀取我文件中的一行,對行中的文本做一些事情,然后移到下一行,直到文件中的所有行都完成。

這是我到目前為止所擁有的:

with open(str(filepath), r) as fp:
    for line in fp:
        rdline = fp.readline() 
        doSomething(rdline)

然而,這不起作用。 我應該如何處理這個問題? 我不想將所有行轉換為字典或列表,因為我將處理包含大量行的文件。

嘗試這個:

with open('filepath') as infile:
  for row in infile:
    do_somthing(row.strip())

再見

正如我在評論中所說, rdline = fp.readline()不是必需的,因為您已經在 for 循環中迭代fp

with open(filepath) as f:
    for line in f: 
        do_something(line)

我認為,出現在您的代碼中的錯誤是

with open(str(filepath), 'r') as fp:
    lines = fp.readlines() 
    for line in lines:
        do_something(line)

將 open 函數的第二個參數作為字符串。

(或者)

如果文件很大,你可以通過這種方法

with open(str(filepath), 'r') as fp:
    line = fp.readline() 
    while line:
        do_something(line)
        line = fp.readline()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM