Python 之列表-集合-字典

一 列表

列表和字符串的區別:

  • 列表可以包含任意類型的值,而字符串是字符序列。

  • 列表是可變的,可以把列中的元素替換成另一個;字符串是不可變的,即不能修改序列中的字符。

1.創建列表

1)方括號表示我們正在創建列表。元素是按給出的順序存儲的。

values = [32, 54, 67.9, 29, 35]

2)用 list(values) 可以得到一個列表副本。

2.訪問列表元素

print(values[1]) // 54

3.遍歷列表

1)方法一

for i in range(len(values)):
  print(i, values[i])

2)方法二

for item in values:
  print(item)

4.列表引用

變量存儲的是列表的引用(列表在內存中的地址)。所以當把一個列表變量賦值給另一個變量時,兩個變量就引用同一個列表,第二個變量是第一個變量的別名。

5.列表操作

1)查找元素

判斷一個元素是否在列表中可以用 in 操作符。

index(x[, start[, end]])

返回列表中第一個值爲 x 的元素的從零開始的索引。如果沒有這樣的元素將會拋出 ValueError 異常。可選參數 startend 是切片符號,用於將搜索限制爲列表的特定子序列。返回的索引是相對於整個序列的開始計算的,而不是 start 參數。

2)增加元素

append(x)

在列表的末尾添加一個元素。相當於 a[len(a):] = [x] 。

insert(i, x)

在給定的位置插入一個元素。第一個參數是要插入的元素的索引,所以 a.insert(0, x) 插入列表頭部, a.insert(len(a), x) 等同於 a.append(x) 。

3)刪除元素

pop([i])

刪除列表中給定位置的元素並返回它。如果沒有給定位置,刪除並返回列表的最後一個元素。

remove(x)

移除列表中第一個值爲 x 的元素。如果沒有這樣的元素,則拋出 ValueError 異常。

clear()

刪除列表中所有的元素。相當於 del a[:] 。

4)求和,最值,排序

sum(list)

對列表中的元素進行求和

max(list)、min(list)

對列表中的元素進行求最大、最小值

sort(key=None, reverse=False)

對列表中的元素進行排序

5)兩個列表之間的操作

+連接

用 + 運算符實現列表的連接

*重複

用 * 運算符實現列表的重複、

==相等性檢測

用 == 運算符比較兩個列表順序和元素是否完全一樣。

 

二 集合

集合是包含一組唯一值的容器。

集合和列表的區別:

  • 集合中的元素不以任何特定的順序存儲,不能通過位置進行訪問。

1.創建集合

1)在大括號中指定元素 // 不能用空的{}創建一個空集合

cast = {1, 4, 5, 6}

2)用 set 函數把任何序列轉化成集合 // 可以用set()創建一個空集合

name = ['aa', 'bb', 'cc']
cast = set(names)

2.訪問集合元素

集合是無序的,不能像列表一樣用位置來訪問集合中的元素。可以用 in 操作符判斷一個元素是否在一個集合中。

3.遍歷集合

for item in cast:
  print(item)

4.集合引用

5.集合操作

1)查找元素

可以用 in 操作符判斷一個元素是否在一個集合中

2)增加元素

add(elem)

將元素 elem 添加到集合中。

3)刪除元素

pop()

從集合中移除並返回任意一個元素。 如果集合爲空則會引發 KeyError

remove(elem)

從集合中移除元素 elem。 如果 elem 不存在於集合中則會引發 KeyError。

clear()

從集合中移除所有元素。

discard(elem)

如果元素 elem 存在於集合中則將其移除。

4)兩個集合之間的操作

==相等性檢測

用 == 運算符比較兩個集合元素是否完全一樣。

issubset()

判斷一個集合是否是另一個集合的子集。

union()

創建兩個集合的並集

intersection()

創建兩個集合的交集

difference()

創建兩個集合的差集

5)其他方法

len(s)

返回集合 s 中的元素數量(即 s 的基數)。

 

三 字典

字典是在鍵和值之間保持關聯的容器。字典中每個鍵有個關聯的值,鍵是唯一的,但是值可能被關聯到多個鍵上

1.創建字典

cantacts = {'fri': 123, 'Bob': 234} // 這裏values也可以是序列或集合

{}表空字典,不是空集合

2.訪問字典元素

print(cantacts[Bob]) // 234

3.遍歷字典

for key in cantacts:
  print(key, cantacts[key])

items()

返回由字典項 ((鍵, 值) 對) 組成的一個新視圖

keys()

返回由字典鍵組成的一個新視圖。

values()

返回由字典值組成的

4.字典引用

5.字典操作

1)查找元素

可以用 in 操作符判斷一個元素是否在一個集合中。

2)增加元素

cantacts[key] = value

將 cantacts[key] 設爲 value

3)刪除元素

pop(key[, default]):

如果 key 存在於字典中則將其移除並返回其值,否則返回 default。 如果 default 未給出且 key 不存在於字典中,則會引發 KeyError。

del cantacts[key]

將 cantacts[key] 從 cantacts 中移除。 如果映射中不存在 key 則會引發 KeyError。

clear():移除字典中的所有元素。

4)其他方法

len(cantacts)

返回字典 cantacts 中的項數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章