ホームページ  >  記事  >  バックエンド開発  >  Python で関数に渡される整数を変更するにはどうすればよいですか?

Python で関数に渡される整数を変更するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-06 01:00:02769ブラウズ

How can I modify an integer passed to a function in Python?

Python での参照による整数の受け渡し

Python では、整数は不変です。つまり、一度作成された整数の値は変更できません。これにより、整数を参照渡しして、関数内で行われた変更を元の変数に反映できるようにする方法という問題が生じます。

可変コンテナの受け渡し

整数を参照によって直接渡すことはできません。リストなどの可変コンテナーで渡すことができます。

def change(x):
    x[0] = 3

x = [1]
change(x)
print(x)

出力:

[3]

この例では、単一の要素を含むリスト x を作成します。次に、x を変更関数に渡し、インデックス 0 の値を変更します。リストは変更可能であるため、この変更は関数が戻った後も持続します。

新しいオブジェクトを返す

もう 1 つのオプションは、関数からの変更された値を持つ新しいオブジェクトを返すことです。

def multiply_by_2(x):
    return 2 * x

x = 1
x = multiply_by_2(x)

この場合、multiply_by_2 関数は 2 倍の値を持つ新しいオブジェクトを返し、それが x に割り当てられます。 。元の整数 x は変更されません。

ベスト プラクティス

関数に整数を渡すときは、次のベスト プラクティスを考慮してください。

  • 元の変数の値を変更する必要がある場合は、上記のように可変コンテナを使用してください。
  • 変更した値のみを使用する必要がある場合は、関数から新しいオブジェクトを返します。
  • 使用は避けてください。グローバル変数。潜在的な競合やコードの可読性の問題につながる可能性があるためです。

以上がPython で関数に渡される整数を変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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