2012-02-10 14 views
-1

私は名前を持つ各ラインでの名前の非常に大きなリストをインポートしていて、次のように私は、セットに追加している。しかし奇妙なセットのバグ

g = open('names.txt', 'r') 
for line in g: 
    self.nameset.add(line) 

、私はそれで最も基本的なコマンドを実行するように見えることはできません、self.namesetのif "name"。私がチェックしている名前がそこにあることを確かに知っているにもかかわらず、名前を見つけることができないようです。しかし、テキストファイルを非常に小さくするとうまくいきます。このように非常に大きなテキストファイルを渡すことによって、私は間違って何かをしていますか?

ありがとうございました!

+1

-1、それは「非常に小さい」ファイルで働いていた唯一の方法は、1行になります行区切り文字なしのファイル。 "私はチェックしている名前がそこにあることを確かに知っている"質問をする前にいくつかのデバッグを行うことを検討してください。 'print self.nameset'はあなたに何を伝えましたか? –

答えて

2

ラインは、「\ n」を含んでいるので、あなたは多分、セットに追加する前に:

self.nameset.add(line.strip()) 
+0

それは私のためにそれをしてくれてありがとう! – user983567