2017-06-17 9 views
0
x = "mama" 
with open("testing.txt") as search: 
    for line in search: 
     line = line.rstrip() 
     if x == line: 
      print line 

testing.txtは、Bohemian Rhapsodyの歌詞を含むファイルです。何よりも、私はそれが行えるようにしようとしています。私はいくつかの異なるタイプのセットアップを試みましたが、これは以下で見ることができます。彼らは私が仕事に就かせることができないものすべてをコメントしてきたので、コメントアウトされているように示されています。おそらく他のコードがありましたが、それぞれのコードはある時点で、---行は私が試したすべてのものを分けています。新しいファイルへのテキストファイル印刷行の文字列の検索Python 2.7

#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 
#  

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

私はちょっとした基本を学んでいます。私は何かを見ていると確信しています。もしそれが#であれば、私はここでそれに対処していたときに私は適切なインデントに関心がありませんでした。この小さなコードを試している間、私が保持してきたメモのほうが多いと考えてください。

答えて

0

私はあなたの問題は何も印刷されていないと仮定しています。

質問の最初のコードはほとんどありませんが、問題は等価(==)をチェックすると、行がちょうどxの値である場合にのみ印刷が実行されることです。

x = "mama" 
with open("testing.txt") as search: 
    for line in search: 
     line = line.rstrip() 
     if x in line: 
      print line 
+0

それでも、何も印刷されません。私は正直なところ、最初の行を探していると思っています。 –

+0

'if'を削除して' line'を表示するとどうなりますか? –

+0

() () () () () () () () () () () () () () () () ( ) () () () () () () () () () () () () () () () () () () () () () () () () () () () ( )txtファイルにはいくつかの行がありますが、それほど多くはありません。 –

関連する問題