動物(クマ、オオカミなど)の数を数え、変数に入れるプログラムを作成しようとしています。python 2.7ファイルの難易度
これは、プログラムが最初の行はサーモンを==ことを登録していないいくつかの理由について
import os
def count_species():
sal_count = 0
tro_count = 0
filename1 = animals.txt
if os.path.exists(animals.txt):
f = open(filename1, 'r')
for line in f:#will execute each line in the file individually
if line == 'Salmon':
sal_count +=1
if line == 'Trout':
tro_count += 1
が機能していません。他のすべてがうまくいくようです。ファイルの例を以下に示します
Salmon
Trout
Salmon
何が起こっていますか?あなたは内のファイルを読み取り、ファイルやチェックの行を反復処理している
+1の 'with'とリストの理解 - コードを読みやすく、より洗練され、よりエレガントにします。 OPが2つの 'if '文を使わないようにする方法を追加することを考えてください。例えば、' sal_count = lines.count(' Salmon ') 'を使うことです。 –
readlineを呼び出す必要はありません。 –