Python エラー: NameError: 名前 'xxx' が定義されていません。どうすれば解決できますか?
Python でプログラミングしていると、「NameError: 名前 'xxx' が定義されていません」というエラーが発生することがあります。このエラーは通常、未定義の変数または関数を使用したことが原因で発生します。このエラーを解決する鍵は、問題の原因を突き止め、適切な解決策を講じることです。この記事では、特定のコード例を通じてこの問題を解決する方法を説明します。
次の Python コードがあるとします。
def calculate_average(numbers): total = sum(numbers) average = total / len(numbers) return average scores = [85, 90, 92, 88] average_score = calculate_average(scores) print("The average score is:", average_score) print("The minimum score is:", min_score)
このコードでは、パラメータとして数値のリストを受け取る calculate_average
という関数を定義します。平均して返します。次に、scores
というリストを定義し、パラメータとして calculate_average
関数に渡し、返された平均を変数 average_score
に割り当てます。最後に、平均スコアと最低スコアを出力します。
ただし、このコードを実行すると、次のエラー メッセージが表示されます。
NameError: name 'min_score' is not defined
このエラーは、最後の行の print ステートメントで発生します。エラーの理由は、変数 min_score
がコード内で定義されていないことです。このエラーを解決するには、変数 min_score
が使用する前に正しく定義されていることを確認する必要があります。
1 つの回避策は、変数 min_score
を定義する行をコードに追加し、それをリスト scores
内の最低スコアに初期化することです。変更されたコードは次のようになります。
def calculate_average(numbers): total = sum(numbers) average = total / len(numbers) return average scores = [85, 90, 92, 88] average_score = calculate_average(scores) min_score = min(scores) # 添加了这行代码 print("The average score is:", average_score) print("The minimum score is:", min_score)
行 min_score = min(scores)
を追加することで、変数 min_score
を定義し、それを scores# に初期化します。 ##リスト内で最も低いスコア。これで、コードを再度実行すると、「NameError: 名前 'min_score' が定義されていません」というエラーは発生しなくなります。
以上がPython エラー: NameError: 名前 'xxx' が定義されていません。どうすれば解決できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。