一覧Python-学習ナレッジベース(リストまたは[])

リスト:リストまたは[]を変えることができる異なる長さのタプルを表すために、各要素を変更することができるされてもよいです。

lista = [2,3,5] #定义了一个列表

tup = ('foo', 'bar', 'baz')

listb = list(tup) #通过元组创建一个列表

print(listb)
#打印
['foo', 'bar', 'baz']

#修改列表第二项
listb[1] = 'peek'

print(listb)
#打印
['foo', 'peek', 'baz']

別のリストを生成する方法、またはイテレータジェネレータの変換によって:

g = range(10) 
print(g)
#打印
    range(0, 10)

list_a = list(g)
pring(list_a)
#打印
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

この方法は、一般的に使用されるの次のリストがあります。

追加 - データを追加

挿入 - データを挿入

削除 - データを削除します

ポップ - 削除し、戻りデータ

lista = ['hello', 'world']
lista.append('day') #添加
print(lista)
#打印
    ['hello', 'world', 'day']

lista.insert(1, 'month') #在 1 的位置插入一个新数据
print(lista)
#打印
    ['hello', 'month', 'world', 'day']

lista.remove('world') #删除 ‘world’ 
print(lista)
#打印
    ['hello', 'month', 'day']

lista.append('hello') #这时里面有两个‘hello’
lista.remove('hello') #删除第一个‘hello’,留下最新加入的一个
print(lista)
#打印
    ['month', 'day', 'hello'] 

a = lista.pop(1) #移除第二个数据,并且返回
print(a, lista)
#打印
    'day', ['month', 'hello']

リストの要素は、キーワードを中にしていない使用されているかどうか、別の裁判官

#接着上面的代码
bln = 'year' in lista
print(bln)
#打印
    False

bln = 'year' not in lista
print(bln)
#打印
    True

それは直接リストの後ろにすることができ、一時的な新しいリストを作成し、コピーしたデータに、我々は拡張、機能の組み込みリストを使用することができ、二つのリストはまた、「+」記号を使用してスプライスされることができますが、その価格は大きくなります一時的なデータの生成を低減することができる、機能を拡張するためのコールのリストに追加します。

alist = [1, 2, 3]
blist = [4, 5, 6]

clist = alist + blist
print(clist)
#打印
    [1, 2, 3, 4, 5, 6]

alist.extend(blist)
print(alist)
#打印
    [1, 2, 3, 4, 5, 6]

もう一つの重要な機能のリストソート、ソート機能である、それは内部リストにソートされ、新しいリストを作成しません。

alist = [5, 4, 7, 8, 1]
alist.sort()
print(alist)
#打印
    [1, 4, 5, 7, 8]

blist = ['saw', 'samll', 'he', 'foxes', 'six']
blist.sort(key=len)
print(blist)
#打印
    ['he', 'saw', 'six', 'small', 'foxes']

二分は、バイナリ検索し、補間ソートされたリストを実装することができるモジュールです。要素が位置に挿入されるべきであり、配列を注文保持見つけることができるbisect.bisect使用; bisect.insort要素が対応する位置に挿入することができます。

import bisect #导入bisect模块

alist = [1, 2, 2, 2, 3, 4, 7]
print(bisect.bisect(alist, 2)) #表示 2 这个数,可以插入到列表的第五个位置
#打印
    4

print(bisect.bisect(alist, 5)) #表示 5 这个数,可以插入到列表的第七个位置
#打印
    6

bisect.insort(alist, 6)    #将数字6插入到列表的第七个位置
print(alist)
#打印
    [1, 2, 2, 2, 3, 4, 6, 7] 

ここに二等分すると、リストがソートされているかどうかをチェックしません、このモジュールの使用にソートされていない場合には、再利用、このモジュールをソートした後、使用にする必要がありますので、それは、誤った結果につながる可能性が急速に進むために、リストにデータを挿入することができます。

括弧内に渡されるストップ値:もう1つの強力な機能のリストは、スタートでスライスされています。

alist = [7, 2, 3, 7, 5, 6, 0, 1]
blist = alist[1: 5]
print(blist)
#打印
    [2, 3, 7, 5]


alist[3:4] = [6, 3]
print(alist)
#打印
    [7, 2, 3, 6, 3, 5, 6, 0, 1]

スライスの数停止に等しい - それは開始位置から省略された場合、停止を含む開始し、さらに停止しない、開始値を含む、開始は、省略することができるのリストにリストの終わりを示します。

#接上面代码
blist = alist[:5]
print(blist)
#打印
    [7, 2, 3, 6, 3]

blist = alist[3:]
print(blist)
#打印
    [6, 3, 5, 6, 0, 1]

#另外索引也可以为负数,表示从列表最后开始:
blist = alist[-4:]
print(blist)
#打印
    [5, 6, 0, 1]

blist = alist[-6: -2]
print(blist)
#打印
    [6, 3, 5, 6]

また、開始時に、ステップ値ステップと呼ばれる、間隔の値を一覧表示することができます:ストッププラスコロンが示した後:開始:停止:ステップ:

#接上面代码
blist = alist[::2]
print(blist)
#打印
    [7, 3, 3, 6, 1]

#有一个小技巧,我们如果想讲列表翻转,那么只要将step变为-1即可:
blist = alist[::-1]
print(blist)
#打印
    [1, 0, 6, 5, 3, 6, 3, 2, 7]

 

おすすめ

転載: blog.csdn.net/pz789as/article/details/93731015