Python:如何在文件中获得多行?

2024-06-01 10:07:16 发布

您现在位置:Python中文网/ 问答频道 /正文

如何从一个文件中获得多行的值? 例如。我有一个包含以下内容的文件:

Anna#18#Goodmorning! 
How are you?

我应该怎么做才能得到这个输出?你知道吗

Goodmorning!
How are you?

我试过使用.splitlines和spliting“#”,但似乎不起作用。 这就是我目前所知道的。你知道吗

newmsg=""
fob = open( "sample.txt" , "r" )
lines = fob.readlines()
for line in lines:
    msg= line.splitlines()
    newmsg += str(msg)
print newmsg
fob.close()

这就是它所显示的:

['Anna#18#Goodmorning!']['How are you?']

我需要的是:

Goodmorning!
How are you?

Tags: 文件sampleyoulinemsgopenarehow
2条回答

拆分“#”是您想要的,但您必须逐行进行。因为打开的文件已经是迭代器,所以我直接在for循环中使用它。既然循环中已经有一行了,我就不再尝试splitlines。你知道吗

newmsg=""
with open( "sample.txt" , "r" ) as fob:
    for line in fob:
        msg= line.split('#')[-1]
        newmsg += msg
print newmsg

使用for循环,您可以遍历行,然后可以按#拆分每行。使用" ".join(msg)可以将数组的元素连接到字符串中,用空格分隔。你知道吗

newmsg=""
fob = open( "sample.txt" , "r" )
for line in fob:
    msg = line.split("#")
    msg = msg[-1:]
    newmsg += " ".join(msg)
print (newmsg)
fob.close()

相关问题 更多 >