私は2つの行が一緒に比較されるパーサを記述しています(話すために 'mainline'その前に来た)。両方の行が一致すると、メインラインは破棄されます。改行やキャリッジリターンの改行のみで構成されている行でのみこれを実行したいだけです。だから私はこのコードPython:if文で 'または'を使用すると、条件が満たされなくてもコードが実行されます
lastline = 0
pointer = 0
for lines in fileLines:
mainline = fileLines[pointer]
if lastline != 0:
print "Last Line: ",lastline
print "This Line: ",mainline
if lastline == '\n' or '\r\n':
if mainline == '\n' or '\r\n':
print "Would drop"
lastline = mainline
pointer = pointer + 1
それは、文字列は確かにこれら4つのオプションのいずれかでない場合には、「ドロップだろう」印刷しますループのためにそれを通過するごとに、単一の時間を持っています。私は何かを完全に後ろ向きにしていると思っていますが、私は自分自身にPythonを教えているので、何か間違っていると話す人はいません。皆さん、ありがとうございます。これがなぜ起こっているのか?
すべてのおかげで、それは完璧に働いています。ありがとう!!!
以下の回答は、コードのエラーを解決しました。しかし、異なる行末に明示的にコーディングする必要はないことに注意することが重要です。 http://www.python.org/dev/peps/pep-0278/を参照してください。 –