Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python辞書は本当に可変だと思いますか?


はい、Python辞書は変更可能です。キーへの参照を変更しても、新しい辞書は作成されません。むしろ、現在の辞書を更新します。

a = {'foo': 1, 'bar': 12}
b = a
b['foo'] = 20

print(a)
print(b)
出力

これにより、出力が得られます-

{'foo': 20, 'bar': 12}
{'foo': 20, 'bar': 12}

  1. なぜタプルはPythonで不変だと思いますか?

    次の理由により、タプルは不変です- 順序の維持-タプルは主にPythonで順序を示す方法として定義されています。たとえば、タプルのリストの形式でデータベースからデータを取得する場合、すべてのタプルは、フェッチしたフィールドの順序になります。 コピー効率-不変オブジェクトをコピーするのではなく、エイリアスを作成できます(変数を参照にバインドします) 比較効率-参照によるコピーを使用している場合、コンテンツではなく場所を比較することで2つの変数を比較できます インターン-不変の値のコピーを最大で1つ保存する必要があり、並行コードで不変オブジェクトへのアクセスを同期する必要は

  2. Pythonでreturnステートメントを使用するのはなぜですか?

    print()関数は、コンソールに文字列または数値を書き込みます。つまり、「印刷」します。 returnステートメントは、関数が呼び出されたときに返す値を出力しません。ただし、関数の最後のステートメントでなくても、関数はすぐに終了または終了します。 値を返す関数は、実りある関数と呼ばれることもあります。他の多くの言語では、値を返さない関数はプロシージャと呼ばれます。 指定されたコードでは、関数foo()が呼び出されたときに返される値(つまり2)が関数bar()で使用されます。これらの戻り値は、以下に示すようにprintステートメントが使用された場合にのみコンソールに出力されます。 例 def