如何在python中逐行读取长多行字符串

DKe*_*ean 57 python

我有一个带有许多线条的字符串.如何用一个for子句逐个阅读这些行?这是我想要做的,我在行中引用的textData var上得到一个错误for line in textData.

for line in textData
    print line
    lineResult = libLAPFF.parseLine(line)
Run Code Online (Sandbox Code Playgroud)

textData变量确实存在,我在下载之前打印它,但我认为预编译器正在解决错误.

TIA

丹尼斯

Ben*_*aum 101

怎么用.splitlines()

for line in textData.splitlines():
    print(line)
    lineResult = libLAPFF.parseLine(line)
Run Code Online (Sandbox Code Playgroud)


thk*_*ang 5

通过换行符拆分。

for line in wallop_of_a_string_with_many_lines.split('\n'):
  #do_something..
Run Code Online (Sandbox Code Playgroud)

如果您遍历字符串,则是在该字符串中按char而不是按行来遍历char。

>>>string = 'abc'
>>>for line in string:
    print line

a
b
c
Run Code Online (Sandbox Code Playgroud)

  • 对于现在阅读本文的任何人,请改用 str.splitlines() 函数。此解决方案会出现一些边缘情况。对于前。假设您迭代每一行,如果对象的最后一行末尾有 \n ,那么您的 for 循环将尝试在空行上执行任务,从而导致错误。上面讨论了公认的解决方案。 (3认同)