Pythonのリスト用の2つの非戻り値関数

        List は Python で一般的に使用されるデータ構造であり、他の言語のデータと同等です。List には多くのメソッドがありますが、戻り値のあるメソッドと戻り値のないメソッドがあります。これは、ほとんどの場合、関数を呼び出すときに、関数には戻り値がありますが、突然戻り値のない関数が現れると、戻り値を受け取る変数が None になり、その後の計算エラーが発生します。

        今日私は extend というメソッドに出会いました。このメソッドの機能は 2 つのリストをマージすることですが、マージ後はマージされた値を返すのではなく、このメソッドを呼び出したリストに直接影響します。コードは以下のように表示されます

l1 = [1,2,3]
l2 = [4,5,6]
l3 = l1.extend(l2)
l3,l1

結果 

(None, [1, 2, 3, 4, 5, 6])

ご覧のとおり、l3 の値は None で、l1 の値はマージされたリストです。

また、同様の結果が得られる関数 sort もあり、新しいソート済みリストを生成して返すのではなく、呼び出し元の値に直接影響します。例えば

l1 = [3,2,1]
l2 = l1.sort()
l2,l1

結果

(None, [1, 2, 3])

したがって、値を返さない関数に遭遇した場合は注意してください。

おすすめ

転載: blog.csdn.net/zy1620454507/article/details/132639763