繁体   English   中英

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

[英]How to read a long multiline string line by line in python

我有一个多行的字符串冲击。 如何使用for子句逐行阅读? 这是我正在尝试执行的操作,并且for line in textData行中的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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM