python 列表 元組 字典 集合

2022-07-21 04:27:09 字數 3442 閱讀 1718

lst = [i for i in range(10)]

#

把下標小於2的顯示出來

print(lst[:2])

#把10個數有大到小輸出

print(lst[::-1])

#把下標為奇數的數字顯示出來

print(lst[::2])

顯示結果

[0, 1]

[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

[0, 2, 4, 6, 8]

當切片時,會生成新的記憶體來儲存切之後的列表。

l1 =lst

l2 =lst[::]

print(id(lst)) #

2601618176520

print(id(l1)) #

2601618176520

print(id(l2)) #

2601618469128

#

顯示能被2整除的數字

l3 = [i for i in lst if i % 2 == 0] #

注意第乙個i、第二個i和第3個i要相對應

#

巢狀列表

lst = [1, [2, 3]]

for i in

lst:

print

(i)#

顯示結果#1

#[2, 3]

for i in range(1, 4):

for j in range(5, 7):

print(i + j, end="")

print()

顯示結果

6 7

7 8

8 9

a = [2, 3, 5]

print(a)

[2, 3, 5, 100]

a.pop()

print(a)

[2, 3, 5]

b = [2, 4]

a.extend(b)

print(a)

[2, 3, 5, 2, 4]

淺拷貝列表在儲存巢狀列表時,l1 = [1, [2, 5, 6], 9]

[2, 5, 6]在l1的儲存形式為[2, 5, 6]的指標

在淺拷貝時,拷貝的只是列表的連線

拷貝之後會形成新的位址

lst2 =lst.copy()

print

(id(lst))

print

(id(lst2))

#2677879858952

#2677879858632

lst2[0] = 10

print

(lst)

print(lst2)

[1, [2, 5, 6], 9]

[10, [2, 5, 6], 9]

可以看到,lst2的第乙個元素變成了10,而lst卻沒有改變

lst2[1][0] = 100

print

(lst)

print(lst2)

[1, [100, 5, 6], 9]

[10, [100, 5, 6], 9]

而此時lst2的第二個元素的第乙個元素會變,但lst的元素也變了。

tuple, 我個人認為元組就是乙個簡化了的列表,也許tuple有自己的功能,但我還是覺得,元組是為了節省空間而存在的。

t1 =()

print(type(t1))

t2 = (1, 2, 3)

print(1 in

t2)print(4 in t2)

但我為啥會說是簡化的列表呢?

list可以增刪改

而tuple不可以,tuple

t2 = (1, 2, 3)

t2.pop()

print(t2)

當我把最後乙個元素刪除時,你會發現python的直譯器會報錯,說明了元組不能自身實現增刪改的操作。

字典的建立和集合差不多,都用大括號,但字典使用的是鍵值對

d1 = 

print(d1)

顯示結果為:

檢測的是key鍵

print('

one'

ind1)

print(1 in d1)

顯示結果:

true

false

在儲存是,字典會按照key進行雜湊儲存,所以只能檢測key是否存在

for i in

d1:

print

(i)#

two#

onefor k in

d1.keys():

print

(k)#

one#

twofor v in

d1.values():

print

(v)#1#

2for k, v in

d1.items():

print(k , '

-----

', v)

#one ----- 1

#two ----- 2

我們在取字典值的時候,可以使用get。

print(d1.get('

one'

))print(d1.get('

three

'))

顯示結果

none

沒有此鍵時,顯示結果為none,而不會報錯,而用d1['three']時,會報錯。

建立乙個集合

s1 = 

print(s1)

結果為:

說明了集合的乙個作用是:去重,乙個集合看起來基本上是無序的。

集合增加元素:

s1.add(1)

print(s1)

集合刪除元素:

如果能記住,建議用discard。當集合中沒有此元素時,不會報錯。

s1.discard(1)  # 把集合中的1刪除

print

(s1)

s1.discard(1) # 集合中已經沒有1 但沒有報錯

print(s1)

也可以使用remove,但沒有此元素時,會報錯

集合適用於減法:

s3 = 

s4 =

print(s3 - s4)

顯示結果為:

會把s3集合中的與s4相同的元素刪除

python列表 元組 字典 集合

列表list 用 表示,list是一種有序的集合,可以隨時新增和刪除其中的元素。元組tuple 用 表示,和列表類似,元組也是一種有序列表,雖然tuple和list非常之類似,但是list初始化之後使可以改變的,但是,元組一旦初始化之後就不可以改變。這點與python中的字串類似,所以我們說元組和字...

python列表 元組 字典 集合

一 列表 可變物件 1.列表的資料項不需要具有相同的型別 建立乙個列表,只要把逗號分隔的不同的資料項使用方括號括起來即可 list1 google runoob 1997,2000 print list1 0 list1 0 列表也可以使用切片 原來字串的切片這裡也可以用 print list 1 ...

Python 列表,元組,字典,集合

特點 順序,可新增,修改,刪除建立方法 x 1,2,3,4,5 x list 12345 x 0 1000 取值方法 x 1 2 x 1 方法 實現兩個列表相加 實現列表的複製後相加 value in sequence 檢驗該value是否在列表sequence中 remove value 刪除指定...