Python 如果分号在末尾,如何打印文本文件的行
我有一个文本文件 Test.txtPython 如果分号在末尾,如何打印文本文件的行,python,Python,我有一个文本文件 Test.txt this is line one; this line one this is line two; this is line three this is line two; 我想打印包含分号的行,但分号应该在行的末尾 我的代码 search = open("Test.txt","r") for line in search : if ";" in line: semi = line.split(";") if
this is line one; this line one
this is line two;
this is line three
this is line two;
我想打印包含分号的行,但分号应该在行的末尾
我的代码
search = open("Test.txt","r")
for line in search :
if ";" in line:
semi = line.split(";")
if semi[-1] == "\n":
print(line)
输出
this is line one; this line one
this is line two;
this is line three
this is line two;
我的代码运行良好,但我希望有更好的方法来实现这一点。
有谁能告诉我一个最简单的方法吗 当然更容易
for line in search :
if line.endswith(';\n'):
print(line)
如前所述,最好使用上下文管理器和
在完成工作后关闭文件:
with open("Test.txt","r") as test_file:
for line in test_file:
if line.endswith(';\n'):
print(line)
当然更容易
for line in search :
if line.endswith(';\n'):
print(line)
如前所述,最好使用上下文管理器和
在完成工作后关闭文件:
with open("Test.txt","r") as test_file:
for line in test_file:
if line.endswith(';\n'):
print(line)
首先使用
with
关键字打开文件:
with open('foo.txt', 'r') as f:
for line in f:
if ';' in line:
semi = line.split(';')
if semi[-1] == '\n':
print line
对我来说,当您使用内置函数时,它已经基本上是python式的,带有
For
循环。首先使用with
关键字打开文件:
with open('foo.txt', 'r') as f:
for line in f:
if ';' in line:
semi = line.split(';')
if semi[-1] == '\n':
print line
if line[:-2] == ';\n':
print(line)
对我来说,当您使用内置函数时,它已经基本上是python式的,带有For
循环
if line[:-2] == ';\n':
print(line)
适用于Python2和Python3
如果行仅为“/n”,也可以使用
适用于Python2和Python3
如果这行代码只是一个“/n”@sam,也可以用。是的,我已经测试过了。谢谢……现在这段代码运行良好,我认为这是最短的方法。我建议您小心“短代码”。越短越好。但是,越清晰越好。:)Spielmeister答案中的切片表示法在这里也适用,因为
是“显而易见的”\n'
是两个字符长-但是任何更长的字符都需要结尾,使用
@sam是的,我已经测试过了。谢谢……现在这段代码运行良好,我认为这是最短的方法。我建议您注意“短代码”。越短越好。但是,越清晰越好。:)Spielmeister答案中的切片表示法在这里也适用,因为是“显而易见的”\n'
有两个字符长-但任何更长的字符都需要结尾
。虽然这可能会回答问题,但您可能不想提供一些额外的细节并解释答案。在当前状态下,此答案的质量较低。虽然这可能会回答问题,但您可能不想提供一些额外的细节并解释答案。在目前的状态下,这个答案是低质量的。