ホームページ >バックエンド開発 >Python チュートリアル >私の Python 関数が「None」を返すのはなぜですか?

私の Python 関数が「None」を返すのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-29 02:52:10999ブラウズ

Why Does My Python Function Return `None`?

関数は何も返さない: 戻り値を理解する

Python プログラミング言語では、開発者が値を返さなくても、すべての関数は本質的に値を返します。明示的に指定してください。特定の値が指定されない場合、Python は関数の戻り値にデフォルト値の None を割り当てます。

次のコード スニペットを考えてみましょう。

def printmult(n):
    i = 1
    while i <= 10:
        print (n * i, end = ' ')
        i += 1
    
print(printmult(30))

この関数 printmult() は入力を受け取ります。値 n を取得し、n に 1 ~ 10 の整数を乗算した結果を出力します。関数内の print ステートメントは、明示的に値を返しません。したがって、スクリプトの最後で関数を呼び出し、その結果を変数 (この場合は print(printmult(30))) に代入すると、変数には None が含まれます。

印刷と返却の違いを理解する。 print によって出力コンソールに結果が表示される間、return によって関数自体に値が割り当てられます。特定の戻り値を指定するには、以下に示すように、関数定義内に目的の値を含む return ステートメントを追加するだけです。

def printmult(n):
    i = 1
    while i <= 10:
        print (n * i, end = ' ')
        i += 1
    return n * 10  # Example return value

このようにコードを変更することで、次の場合に戻り値にアクセスできるようになります。 printmult() 関数を呼び出します。予期しない結果を回避し、コードが意図したとおりに動作するようにするには、関数で戻り値を明示的に指定することを常に推奨します。

以上が私の Python 関数が「None」を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。