一参咙、列表
1蛙埂、定義
- python中可以通過組合一些值得到多種復合數據類型
- 列表是其中最常見的數據結構
- 列表通過方括號括起矗钟、逗號分隔的一組值得到
- 一個列表可以包含不同類型的元素芋簿,但通常使用時各個元素類型相同
2罢低、列表的特性
- list.append(x):在列表的尾部添加一個元素贪薪,相當于a[len(a):]=[x]
list1 = []
for i in range(0, 10, 2):
list1.append(i)
print(list1)
- list.insert(i,x):在給定的位置插入一個元素媳禁。第一個元素。第一個參數是要插入的元素的索引画切,以a.insert(0,x)插入列表頭部损话,a.insert(len(a),x)等同與a.append(x)
list1 = [1, 2, 3, 4, 5, 6]
list1.insert(1, 2)
print(list1)
打印出:
[1, 2, 2, 3, 4, 5, 6]
- list.remove(x):移除列表中第一個值為x的元素。如果沒有這樣的元素槽唾,則拋出ValueError異常丧枪。
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
list1.remove(2)
print(list1)
- list.pop([i]):刪除列表中給定位置的元素并返回它,如果沒有給定位置庞萍,a.pop()將會刪除并返回列表中的最后一個元素
list1 = [1, 2, 3, 4, 5, 6]
y = list1.pop(1)
print(list1)
print(y)
打印出
[1, 3, 4, 5, 6]
- list.sort(key=None,reverse=False):對列表中的元素進行排序(參數可用于自定義排序拧烦,解釋請參見sorted())
list1 = [3, 6, 8, 9, 5, 1, 2, 7, 4]
list1.sort()
print(list1)
- list.reverse():反轉列表中的元素
list1 = [3, 6, 8, 9, 5, 1, 2, 7, 4]
list1.reverse()
print(list1)
- list.clear()刪除列表中所有的元素,相當于del a[:]
list1 = [3, 6, 8, 9, 5, 1, 2, 7, 4]
list1.clear()
# del list1[:]
print(list1)
list.extend(iterable):使用可迭代對象中的所有元素來擴展列表钝计,相當于a[len(a):]=iterable
list.count(x):返回元素x在列表中出現(xiàn)的次數
list1 = [1, 2, 3, 4, 5, 6, 1, 1]
print(list1.count(1))
3恋博、列表推導式
- 概念:
列表推導式提供了一個更簡單導創(chuàng)建列表的方法齐佳。常見的用法式把某種操作應用于序列可迭代對象的每個元素上,然后使用氣結構來創(chuàng)建列表债沮,或者通過滿足某些特定條件元素來創(chuàng)建子序列 - 練習:
如果我們想生成一個平方列表炼吴,比如[1,4,9...],使用for循環(huán)應該怎么寫,使用列表生成式又應該怎么寫
#for循環(huán)
list1 = []
for i in range(1, 10):
a = i**2
list1.append(a)
print(list1)
#列表生成式
list1 = [i ** 2 for i in range(1, 10)]
print(list1)
二疫衩、元組
1硅蹦、定義
- 元素使用()進行定義
- tuple、list闷煤、range都是序列數據類型
- 元組是不可變的童芹,可以通過解包、索引來訪問
# 元組的定義
tuple1 = (1, 2, 3)
tuple2 = 1, 2, 3
print(type(tuple1), type(tuple2))
打印出(不加()也是元組)
<class 'tuple'> <class 'tuple'>
2鲤拿、集合
- 集合是由不重復元素組成的無序的集
- 它的基本用法包括成員檢測金額消除重復元素
- 可以使用{}或者set()函數創(chuàng)建集合
- 要創(chuàng)建一個空集合只能用set()而不能用{}
# 集合定義
a = {1}
b = set()
print(type(a))
print(type(b))
print(len(b))
# 集合并集
a = {1, 2, 3}
b = {1, 4, 5}
print(a.union(b))
# 集合交集
a = {1, 2, 3}
b = {1, 4, 5}
print(a.intersection(b))
# 去重
a = 'aajshdajghagdqbwhdgh'
print(set(a))
打印出
{'a', 'd', 'g', 'q', 'b', 'h', 'w', 'j', 's'}
三假褪、字典
1、定義
- 字典是以【關鍵字】為索引
- 關鍵字可以是任意不可變類型近顷,通常是字符串或者數字生音,如果一個只包含字符串、數字或元組窒升,那么這個元組也可以用作關鍵字
# 字典
dict1 = {'a': 1, 'b': 2}
dict2 = dict(a=1, b=2)
print(type(dict1), type(dict2))
2久锥、常用函數
dict1 = {'a': 1, 'b': 2}
# 刪除指定鍵值對
dict1.pop('a')
print(dict1)
dict1 = {'a': 1, 'b': 2}
# 隨機刪除鍵值對
dict1.popitem()
print(dict1)
# 傳入keys
dict1 = {}
dict2 = dict1.fromkeys(['a', 'b', 'c'], 1)
print(dict2)
3、字典推導式
# 字典推導式
print({i: i * 2 for i in range(1, 4)})
打印出
{1: 2, 2: 4, 3: 6}