上一篇:二级Python学习笔记(五)
最常用的组合数据类型:集合类型(一个具体的数据类型名称)、序列类型和映射类型(都是一类数据类型的总称)。
集合类型:元素的集合,元素无序,用大括号({})表示,相同元素在集合中唯一存在,不可重复,主要用于元素去重,适合于任何组合数据类型。集合(set)。
集合类型4个操作符,交集(&)、并集(|)、差集 (-)、补集(^)
>>>T = {1010, "1010", 12.3, 1010, 1010} >>>print(T) {1010,'1010',12.3} >>>S = {1010, "1010", 78.9} >>>T = {1010, "1010", 12.3, 1010, 1010} >>>S - T {78.9} >>>T – S {12.3} >>>S & T {1010,'1010'} >>>T & S {1010,'1010'} >>>S ^ T {78.9, 12.3} >>>T ^ S {78.9, 12.3} >>>S | T {78.9, 1010, 12.3,'1010'} >>>T | S {1010, 12.3, 78.9,'1010'}
集合类型常用的操作函数或方法:
序列类型:元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他,可以存在相同数值但位置不同的元素。字符串(str)、元组(tuple)、列表(list)。
序列类型通用的操作符和函数:
映射类型:“键-值”数据项的组合,每个元素是一个键值对,元素之间无序,表示为(key, value)。字典(map)。
列表:用中括号([])表示, 也可以通过list(x) 函数将集合或字符串类型转换成列表类型。没有长度限制,属于序列类型。
>>>ls = [1010, "1010", [1010, "1010"], 1010] >>>ls [1010,'1010', [1010,'1010'], 1010] >>>list('列表可以由字符串生成') ['列','表','可','以','由','字','符','串','生','成'] >>>list() []
列表的索引:获得列表的一个元素,使用中括号作为索引操作符。
>>>ls = [1010, "1010", [1010, "1010"], 1010] >>>ls[3] 1010 >>>ls[-2] [1010,'1010'] >>>ls[5] Traceback (most recent call last): File "<pyshell#35>", line 1, in <module> ls[5] IndexError: list index out of range #对列表元素进行遍历操作 >>>ls = [1010, "1010", [1010, "1010"], 1010] >>>for i in ls: print(i*2) 2020 10101010 [1010,'1010', 1010,'1010'] 2020
列表的切片:获得列表的一个片段(一个或多个元素)。结果也是列表类型。两种方式:[列表][N: M] 或 [列表][N: M: K]
>>>ls = [1010, "1010", [1010, "1010"], 1010] >>>ls[1:4] #从N到M(不包含M) ['1010', [1010,'1010'], 1010] >>>ls[-1:-3] [] >>>ls[-3:-1] ['1010', [1010,'1010']] >>>ls[0:4:2] #从N到M(不包含M)以K为步长 [1010, [1010,'1010']]
列表类型通用的操作函数:
>>>ls = [1010, "1010", [1010, "1010"], 1010] >>>len(ls) 4 >>>lt = ["Python", ["1010", 1010, [1010, "Python"]]] >>>len(lt) 2 >>>ls = [1010, 10.10, 0x1010] >>>min(ls) 10.1 >>>lt = ["1010", "10.10", "Python"] >>>max(lt) 'Python' >>>ls = ls + lt >>>print(ls) [1010, 10.1, 4112, '1010', '10.10', 'Python'] >>>min(ls) Traceback (most recent call last): File "<pyshell#15>", line 1, in <module> min(ls) TypeError: '<' not supported between instances of 'str' and 'float' >>>list("Python") ['P', 'y', 't', 'h', 'o', 'n'] >>>list({"小明", "小红", "小白", "小新"}) ['小红', '小明', '小新', '小白'] >>>list({"201801":"小明", "201802":"小红", "201803":"小白"}) ['201801','201802','201803']
列表的操作方法:
>>>lt = ["1010", "10.10", "Python"] >>>lt.append(1010) >>>print(lt) ['1010','10.10','Python', 1010] >>>lt.append([1010, 0x1010]) >>>print(lt) ['1010','10.10','Python', 1010, [1010, 4112]] >>>lt = ["1010", "10.10", "Python"] >>>ls = [1010, [1010, 0x1010]] >>>ls += lt >>>print(lt) ['1010','10.10','Python', 1010, [1010, 4112]] >>>lt = ["1010", "10.10", "Python"] >>>lt.insert(1, 1010) >>>print(lt) ['1010', 1010,'10.10','Python'] >>>lt = ["1010", "10.10", "Python"] >>>lt.clear() >>>print(lt) [] >>>lt = ["1010", "10.10", "Python"] >>>print(lt.pop(1)) 10.10 >>>print(lt) ["1010", "Python"] >>>lt = ["1010", "10.10", "Python"] >>>lt.remove("10.10") >>>print(lt) ["1010", "Python"] >>>lt = ["1010", "10.10", "Python"] >>>print(lt.reverse()) ['Python','10.10','1010'] >>>lt = ["1010", "10.10", "Python"] >>>ls = lt.copy() >>>lt.clear() # 清空lt >>>print(ls) ["1010", "10.10", "Python"]
保留字del对列表元素或片段进行删除:
>>>lt = ["1010", "10.10", "Python"] >>>del lt[1] >>>print(lt) ["1010", "Python"] >>>lt = ["1010", "10.10", "Python"] >>>del lt[1:] >>>print(lt) ["1010"]
字典:使用大括号{}建立,每个元素是一个键值对,没有顺序且不能重复,通过字典类型实现映射。{<键1>:<值1>, … , <键n>:<值n>}
>>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>print(d) {'201801': '小明','201802': '小红','201803': '小白'}
字典的索引:<值> = <字典变量>[<键>]
>>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>print(d["201802"]) 小红 #利用索引和赋值(=),修改字典中元素 >>>d["201802"] = '新小红' >>>print(d) {'201801': '小明','201803': '小白','201802': '新小红'} #使用大括号可以创建字典,通过索引和赋值增加元素 >>>t = {} >>>t["201804"] = "小新" >>>print(d) {'201804': '小新'}
字典类型通用的操作函数:
>>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>len(d) 3 >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>min(d) '201801' >>>max(d) '201803' >>>d = dict() >>>print(d) {}
字典的操作方法:
>>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>d.keys() dict_keys(['201801','201802','201803'])+ >>>type(d.keys()) <class 'dict_keys'> >>>list(d.keys()) ['201801','201802','201803'] >>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>d.values() dict_values(['小明','小红','小白']) >>>type(d.values()) <class 'dict_values'> >>>list(d.values()) ['小明','小红','小白'] >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>d.items() dict_items([('201801','小明'), ('201802','小红'),('201803','小白')]) >>>type(d.items()) <class 'dict_items'> >>>list(d.items()) [('201801','小明'), ('201802','小红'), ('201803','小白')] >>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>d.get('201802') '小红' >>>d.get('201804') >>>d.get('201804','不存在') '不存在' >>>d = {"201801":"小明","201802":"小红","201803":"小白"} >>>d.pop('201802') '小红' >>>print(d) {'201801': '小明','201803': '小白'} >>>d.pop('201804','不存在') '不存在' >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>print(d.popitem()) ('201803', '小白') >>>d {'201801': '小明', '201802': '小红'} >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>d.clear() >>>print(d) {} >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>del d["201801"] >>>print(d) {'201802': '小红', '201803': '小白'} >>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>"201801" in d True >>>"201804" in d False
字典遍历循环对其元素进行遍历:
>>>d = {"201801":"小明", "201802":"小红", "201803":"小白"} >>>for k in d: print("字典的键和值分别是:{}和{}".format(k, d.get(k))) 字典的键和值分别是:201801和小明 字典的键和值分别是:201802和小红 字典的键和值分别是:201803和小白
666
【版权声明】感谢转载,转载请注明出处。 李维山博客http://msllws.top