pythonのlistとtupe

3396 ワード

一、list listはpython内蔵の秩序あるリストであり、その中の要素1、定義をいつでも追加し、削除することができる.
list_name = ["param1","param2","param3"]
 >>> city = ["  ","  ","  "]
 >>> city
 >>> ['  ', '  ', '  ']

2、アクセス
1)インデックスでアクセスし、インデックスは0から
 >>> city[0]
 >>> '  '

インデックスは境界を越えてはいけません.そうしないと、エラーが発生します.最後の要素のインデックスはlen(city)-1 2)です.後から最後の要素にアクセスするインデックスは-1の順に類推することができます.最初の要素のインデックスは-len(city)>>city[-1]>>>>広州'です.
 >>> city[-len(city)]
 >>> '  '

3、元素の追加
>>> city.append('  ')
>>> city
>>> ['  ', '  ', '  ', '  ']

4、要素の挿入
cityのインデックス1に重慶>>>cityを追加します.Insert(1,'重慶')>>city>>>>['北京','重慶','上海','広州','南京']
5、要素の削除1)削除末尾
 >>> city
 >>> ['  ', '  ', '  ', '  ', '  ']
 >>> city.pop()
 >>> '  '
 >>> city
 >>> ['  ', '  ', '  ', '  ']

2)指定された位置要素pop(i)を削除し、iをインデックス値とする
 >>> city
 >>> ['  ', '  ', '  ', '  ']
 >>> city.pop(1)
 >>> '  '
 >>> city
 >>> ['  ', '  ', '  ']

6、要素の置換
 >>> city
 >>> ['  ', '  ', '  ']
 >>> city[0] = '  '
 >>> city
 >>> ['  ', '  ', '  ']

7、二次元リスト
 >>> list       list
 >>> city_son = ['   ','   ']
 >>> city[1] = city_son
 >>> city
 >>> ['  ', ['   ', '   '], '  ']

アクセス時には直接city[1][0]city[1][1]にアクセスして要素値にアクセスできます
二、tuple(メタグループ)
tupeとlistの最大の違いはtupleが作成されると修正できないことです
1、定義
 >>> country = ('  ','  ','   ')
 >>> country
 >>> ('  ', '  ', '   ')

2、アクセスはlistと同じcountry[0]、country[1].tupleは可変であるためappendとinsert関数はない
3、一つの要素のtuple
 >>> num = (1)
 >>> num
 >>> 1
 >>> name = ("shuang")
 >>> name
 >>> 'shuang'

tupleの要素が1つの要素しかない場合、pythonはカッコがカッコの機能であると考え、整数または文字列に従って解析することを発見しました.この問題を解決するために、pythonはこのような状況に後にカンマ','を付けることを規定しています.
 >>> num = (1,)
 >>> num
 >>> (1,)
 >>> name = ('shuang',)
 >>> name
 >>> ('shuang',)

4、tupleの指向は変わらない
 >>> c = (1,2,['shuang','dan'])
 >>> c
 >>> (1, 2, ['shuang', 'dan'])
 >>> c[2][0] = 'dong'
 >>> c
 >>> (1, 2, ['dong', 'dan'])

あなたは驚いて、どうして変わることができますか??実はpython内部では、c[0]、c[1]は1と2を指し、c[2]はtupleの要素ではなくlistの要素を指すlistオブジェクトを指す.tupleが最初に指すリストは他のリストに変更されていないので、tupleのいわゆる「不変」は、tupleの各要素が永遠に不変であることを指す.