ホームページ >バックエンド開発 >Python チュートリアル >Python 関数が時々「None」を返すのはなぜですか?
関数が何も返さない理由
Python では、関数は値を返すことが期待されています。明示的な return ステートメントが指定されていない場合、デフォルトの戻り値は None です。ただし、これは、特に関数が明示的に何も返さずに特定のアクションを実行することが期待されている場合に混乱を招く可能性があります。
次のコードを考えてみましょう。
def print_multiplication(n): i = 1 while i <= 10: print(n * i, end=' ') i += 1 print(print_multiplication(30))
この関数は、次の乗算表を出力します。数値は 30 です。関数内の print ステートメントは、return ステートメントを使用せずに各積を出力します。したがって、関数はデフォルトで None を返します。
戻り値について
print ステートメントは九九を表示することを目的としていますが、何も返しません。その結果、print_multiplication(30) も None を返します。戻り値を出力しようとすると、期待される出力の代わりに None が出力されます。
関数の修正
この問題を解決するには、目的の出力を指定する必要があります。戻り値。この関数は特定のデータを返さずにタスクを実行することを目的としているため、None キーワードを明示的に使用できます。
def print_multiplication(n): i = 1 while i <= 10: print(n * i, end=' ') i += 1 return None print(print_multiplication(30))
明示的に None を返すことで、関数が Python の規則に従って値を返すようになります。特定のデータを提供する。これで、戻り値を出力すると、None が正しく出力されます。
以上がPython 関数が時々「None」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。