在python中逐行读取多行字符串(代码片段)

迹忆客 迹忆客     2023-04-03     124

关键词:

使用 str.splitlines() 方法逐行读取多行字符串,例如 for line in multiline_str.splitlines():str.splitlines() 方法在每个换行符处拆分字符串并返回字符串中的行列表。

multiline_str = """\\
First line
Second line
Third line"""


# First line
# Second line
# Third line
for line in multiline_str.splitlines():
    print(line)

str.splitlines() 方法将字符串拆分为换行符,并返回一个包含字符串中行的列表。

multiline_str = """\\
First line
Second line
Third line"""

lines = multiline_str.splitlines()
print(lines) # 👉️ ['First line', 'Second line', 'Third line']

除非 keepends 参数设置为 True,否则该方法不包括换行符。

multiline_str = """\\
First line
Second line
Third line"""

lines = multiline_str.splitlines(True)
print(lines)  # 👉️ ['First line\\n', 'Second line\\n', 'Third line']

str.splitlines() 方法在不同的行边界上拆分,例如 \\n\\r\\r\\n

my_str = "one\\rtwo\\r\\nthree\\n"

lines = my_str.splitlines()
print(lines)  # 👉️ ['one', 'two', 'three']

如果字符串以换行符结尾,则 splitlines() 方法将其删除,而不是 str.split() 方法。

my_str = "one\\ntwo\\nthree\\n"

lines = my_str.splitlines()
print(lines)  # 👉️ ['one', 'two', 'three']

lines = my_str.split('\\n')
print(lines)  # 👉️ ['one', 'two', 'three', '']

请注意str.split() 方法返回的列表中的最后一项是空字符串。

使用 str.splitlines() 获取字符串中的行列表后,使用 for 循环遍历列表并逐行读取。

再看下面的例子。

multiline_str = """\\
First line
Second line
Third line"""


# First line
# Second line
# Third line
for line in multiline_str.splitlines():
    print(line)

如果文本和换行符之间有空格,请使用 str.strip() 方法将其删除。

my_str = 'one \\ntwo \\n three \\n'

# 👇️ ['one ', 'two ', ' three ']
print(my_str.splitlines())

lines = [line.strip() for line in my_str.splitlines()]
print(lines)  # 👉️ ['one', 'two', 'three']

我们使用列表推导来迭代列表。

列表推导用于对每个元素执行一些操作,或者选择满足条件的元素子集。

在每次迭代中,我们调用 str.strip() 方法从字符串中删除任何前导和尾随空格。

如果我们在结果中得到空字符串并想要过滤掉它们,请使用 filter() 函数。

my_str = '\\rone\\r\\ntwo\\nthree\\n'

# 👇️ ['', 'one', 'two', 'three']
print(my_str.splitlines())

lines = list(filter(None, my_str.splitlines()))

# one
# two
# three
for line in lines:
    print(line)

filter() 函数将一个函数和一个迭代器作为参数,并从迭代器的元素构造一个迭代器,函数为其返回一个真值。

如果为函数参数传递 None ,则可迭代的所有虚假元素都将被删除。

空字符串是虚假值,因此空字符串列表项已从列表中删除。

python从txt文件中逐行读取数据(代码片段)

非常的简单,提供三种方法:方法一:f=open("foo.txt")#返回一个文件对象line=f.readline()#调用文件的readline()方法whileline:printline,#后面跟','将忽略换行符#print(line,end='')   #在Python3中 查看详情

在python中逐行读取一个大的压缩文本文件

】在python中逐行读取一个大的压缩文本文件【英文标题】:Readalargezippedtextfilelinebylineinpython【发布时间】:2012-07-1400:05:52【问题描述】:我正在尝试使用zipfile模块来读取存档中的文件。未压缩文件约为3GB,压缩文件为200MB。我不... 查看详情

Python:如何在 numpy 数组中逐行读取?

】Python:如何在numpy数组中逐行读取?【英文标题】:Python:Howtoreadlinebylineinanumpyarray?【发布时间】:2016-06-0508:11:13【问题描述】:我想知道我们可以在数组中逐行读取。例如:array([[0.28,0.22,0.23,0.27],[0.12,0.29,0.34,0.21],[0.44,0.56,0.51,0.... 查看详情

我应该如何在 Python 中逐行读取文件?

】我应该如何在Python中逐行读取文件?【英文标题】:HowshouldIreadafileline-by-lineinPython?【发布时间】:2012-07-1807:41:35【问题描述】:在史前时代(Python1.4)我们做到了:fp=open(\'filename.txt\')while1:line=fp.readline()ifnotline:breakprintline在Pyt... 查看详情

有没有办法从 ASC 文件中逐行读取并在特定子字符串后检查它?

】有没有办法从ASC文件中逐行读取并在特定子字符串后检查它?【英文标题】:IsthereawaytoreadlinebylinefromaASCfileandcheckingitafteraspecificsubstring?【发布时间】:2019-08-0907:16:15【问题描述】:我有一个包含很多行的文件,我想将其转换... 查看详情

在 Swift 中逐行读取文本文件?

】在Swift中逐行读取文本文件?【英文标题】:ReadatextfilelinebylineinSwift?【发布时间】:2015-10-2501:16:18【问题描述】:我刚开始学习Swift。我已经从文本文件中读取了我的代码,并且应用程序显示了整个文本文件的内容。如何逐行... 查看详情

如何使用python在字符串html中逐行添加“\ n”?

】如何使用python在字符串html中逐行添加“\\\\n”?【英文标题】:Howtoadd"\\n"linebylineinstringhtmlwithpython?如何使用python在字符串html中逐行添加“\\n”?【发布时间】:2021-12-2604:30:38【问题描述】:我有一行html格式如下:<o... 查看详情

在nodejs中逐行读取文件没有简单的方法吗? [复制]

】在nodejs中逐行读取文件没有简单的方法吗?[复制]【英文标题】:Noeasywaytoreadafilelinebylineinnodejs?[duplicate]【发布时间】:2019-03-1812:16:15【问题描述】:我正在用nodejs编写一个小解析器,它将给定的汇编语言翻译成二进制代码。... 查看详情

在 Go 中逐行读取文件

】在Go中逐行读取文件【英文标题】:ReadingafilelinebylineinGo【发布时间】:2012-02-0403:44:52【问题描述】:我在Go中找不到file.ReadLine函数。我可以弄清楚如何快速写一个,但我只是想知道我是否在这里忽略了一些东西。如何逐行读... 查看详情

在 C# 中逐行读取文件

】在C#中逐行读取文件【英文标题】:ReadingafilelinebylineinC#【发布时间】:2010-11-1906:20:55【问题描述】:我正在尝试读取一些文本文件,其中每一行都需要处理。目前我只是使用StreamReader,然后单独读取每一行。我想知道是否有... 查看详情

在 VBA 中逐行读取/解析文本文件

】在VBA中逐行读取/解析文本文件【英文标题】:Read/ParsetextfilelinebylineinVBA【发布时间】:2012-07-1617:45:47【问题描述】:我正在尝试使用VBA解析文本文档并返回文本文件中给出的路径。例如,文本文件如下所示:*Blahblahinstructions*B... 查看详情

如何在 Java 中逐行读取文本文件并分隔每一行的内容?

】如何在Java中逐行读取文本文件并分隔每一行的内容?【英文标题】:Howdoyoureadatextfile,linebyline,andseparatecontentsofeachlineinJava?【发布时间】:2015-10-1401:21:23【问题描述】:我想知道如何读取文件并扫描每一行,但将每一行的内容... 查看详情

如何在 Julia 中逐行读取文件?

】如何在Julia中逐行读取文件?【英文标题】:HowtoreadafilelinebylineinJulia?【发布时间】:2020-01-2920:32:14【问题描述】:如何打开文本文件并逐行读取?我对两种不同的情况感兴趣:一次获取数组中的所有行。一次处理每一行。对... 查看详情

在 Swift 中逐行读取文件/URL

】在Swift中逐行读取文件/URL【英文标题】:Readafile/URLline-by-lineinSwift【发布时间】:2014-08-2605:15:45【问题描述】:我正在尝试读取NSURL中给出的文件并将其加载到数组中,其中项目由换行符\\n分隔。这是我目前的做法:varpossList:NS... 查看详情

使用 mmap 在 C 中逐行读取文件的最佳方法? [关闭]

】使用mmap在C中逐行读取文件的最佳方法?[关闭]【英文标题】:Bestwaytoreadafileline-by-lineinCusingmmap?[closed]【发布时间】:2016-02-1222:26:56【问题描述】:以下代码显示了如何使用mmap命令读取文件的一部分:addr=mmap(NULL,length+offset-pa_of... 查看详情

在 C 中逐行浏览文本文件

】在C中逐行浏览文本文件【英文标题】:GoingthroughatextfilelinebylineinC【发布时间】:2012-03-0115:24:32【问题描述】:我一直在为我的CIS课程做一个小练习,并且对C用于读取文件的方法感到非常困惑。我真正需要做的就是逐行读取文... 查看详情

在 Java 中逐行处理文本文件和连字符字符串

】在Java中逐行处理文本文件和连字符字符串【英文标题】:ProcessingtextfilesandhyphenatingstringslinebylineinJava【发布时间】:2013-08-0501:51:40【问题描述】:我有一个.txt文件,单列中有8,000行。每行包含一个字母数字或一个数字,如下所... 查看详情

如何在 html 文本区域中逐行读取文本? [复制]

】如何在html文本区域中逐行读取文本?[复制]【英文标题】:Howtoreadtextlinebylineinahtmltextarea?[duplicate]【发布时间】:2013-07-0920:12:29【问题描述】:如何逐行读取文本区域的内容或将文本拆分为不同的行以文本行的形式获取输入。... 查看详情