我有很多行的字符串。如何使用for
子句逐行阅读?这是我正在尝试做的事情,我在该for line in textData
行中引用的 textData var 上收到错误。
for line in textData
print line
lineResult = libLAPFF.parseLine(line)
textData 变量确实存在,我在关闭之前打印它,但我认为预编译器正在引发错误。
我有很多行的字符串。如何使用for
子句逐行阅读?这是我正在尝试做的事情,我在该for line in textData
行中引用的 textData var 上收到错误。
for line in textData
print line
lineResult = libLAPFF.parseLine(line)
textData 变量确实存在,我在关闭之前打印它,但我认为预编译器正在引发错误。
怎么用.splitlines()
?
for line in textData.splitlines():
print(line)
lineResult = libLAPFF.parseLine(line)
通过换行符拆分。
for line in wallop_of_a_string_with_many_lines.split('\n'):
#do_something..
如果您遍历一个字符串,您将在该字符串中逐个字符地迭代字符,而不是逐行。
>>>string = 'abc'
>>>for line in string:
print line
a
b
c
这个答案在几个边缘情况下失败了(见评论)。上面接受的解决方案将处理这些问题。str.splitlines()
是要走的路。尽管如此,我还是会留下这个答案作为参考。
旧(不正确)答案:
s = \
"""line1
line2
line3
"""
lines = s.split('\n')
print(lines)
for line in lines:
print(line)