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

なぜPythonはリスト内のリストではなくリスト内のタプルを返すのですか?


Pythonは、一部のデータを返すときにデータを変更しないことを期待しています。タプルもリストよりも高速です。タプルは通常、順序と位置が意味があり、一貫している場合に使用されます。したがって、たとえば、Pythonにデータベースドライバーがあり、いくつかのデータをクエリする場合、ドライバーはデータを取得し、それを変更せずに使用することを期待しているため、タプルのリストが返される可能性があります。これにより、データがクエリしたフィールドと同じ順序になることも保証されます。


  1. Pythonが関数でタプルを定義できないのはなぜですか?

    Python 3.0以降、パックされていないタプルを関数のパラメーターとして定義することはできなくなりました(PEP3113)。これは、関数を次のように定義しようとした場合を意味します- def fn(a,(b,c)):    pass Pythonインタープリターは、タプルの最初のブラケットに構文エラーを表示します。代わりに、タプルオブジェクトをパラメーターとして定義し、関数内で解凍します。次のコードでは、2つのポイントのx座標とy座標を表す2つのタプルオブジェクトが、2つのポイント間の距離を計算するためのパラメーターとして渡されます。計算する前に、タプルオブジェ

  2. Pythonタプル

    Pythonでは、タプルは順序付けられたコレクションです。 および不変 。つまり、タプルにアイテムを追加したり、タプルからアイテムを削除したりすることはできません。 括弧()を使用してタプルを作成します および少なくとも1つのコンマ( , ) 。 タプルは、スライスの結果もタプルになることを除いて、リストと同じようにインデックス付けおよびスライスできます。 タプルを作成する方法 colorsTuple = (red, green, blue) print(colorsTuple) 出力: (red, green, blue) 1つのアイテムのみでタプルを作成する タプルには少なくと