在文本文件打印行中查找字符串到新文件Python 2.7

在文本文件打印行中查找字符串到新文件Python 2.7,python,text-parsing,Python,Text Parsing,testing.txt是一个包含波希米亚狂想曲歌词的文件。最重要的是,我只是想打印一行。我尝试了几种不同类型的设置,如下所示。它们显示为注释掉,因为我只是注释掉了我无法工作的所有内容。可能还有其他代码在某个时候与它们一起使用,但是---行分隔了我尝试过的所有代码 x = "mama" with open("testing.txt") as search: for line in search: line = line.rstrip() if x

testing.txt是一个包含波希米亚狂想曲歌词的文件。最重要的是,我只是想打印一行。我尝试了几种不同类型的设置,如下所示。它们显示为注释掉,因为我只是注释掉了我无法工作的所有内容。可能还有其他代码在某个时候与它们一起使用,但是---行分隔了我尝试过的所有代码

 x = "mama"
 with open("testing.txt") as search:
     for line in search:
         line = line.rstrip()
         if x == line:
             print line
#searchquery='mama\n'
#打开('testing.txt',r')作为f1:
#打开('616.txt','w')作为f2:
#对于f1中的行:
#如果行==搜索查询:
#打印行
#f2.写入(行)
#f2.写入(f1.next())
#f2.写入(f2.next())
#f1.关闭()
#f2.关闭()
#        -----------------------------------------------
#searchquery='mama\n'
#x=57
#要打开下面的文件,我执行了如下操作:
#打开(“testing.txt”,r)作为f1:
#打开(“614.txt”,w)作为f2:

#我想你的问题是没有打印出来

关于您的问题的第一个代码几乎就在那里,问题是通过检查相等(
=
)仅当行正好是
x
的值时,才会执行打印。您可以在
操作符中使用
,而不是相等

#searchquery = 'mama\n'

#with open('testing.txt', 'r') as f1:
#   with open('616.txt', 'w') as f2:
#      for line in f1:
#         if line == searchquery:
#            print line
#            f2.write(line)
#            f2.write(f1.next())
#            f2.write(f2.next())
#f1.close()
#f2.close()

#        -----------------------------------------------

#searchquery = 'mama\n'
#x=57
#to open the files for below I did something like:
#with open("testing.txt", r) as f1:
#    with open("614.txt", w) as f2:
#while i <=x:
#    if lines[i] == searchquery:
#            f2.write(Lines[i])
#            f2.write(Lines[i+1])
#            f2.write(Lines[i+2])             
#    else:
#        i = i+1
#    

#----------------------

它仍然没有打印任何东西。老实说,我认为这只是在搜索第一行。如果你删除
if
,然后总是打印
行,会发生什么呢?()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()。。。为了完全清楚,txt文件中有一些行有(),但没有那么多。因此,我决定写一个if-else语句,如果找不到我要找的单词,就打印“not-here”。它打印了57次“不在这里”。所以问题是它找不到我要找的关键词。(如果您的回答非常棒,我会继续查找,但如果我找到我的解决方案,我会让您知道!谢谢!)使用open(“testing.txt”,“r”)作为f:open(“624.txt”,“w”)作为f1:for line in f:if“mama”in line.lower():f1.write(line)作为我的解决方案。我的问题是,我正在搜索的文件中我的标志是大写的。傻。
x = "mama"
with open("testing.txt") as search:
     for line in search:
         line = line.rstrip()
         if x in line:
             print line