本文共 4125 字,大约阅读时间需要 13 分钟。
本章将从Python中的基本数据结构入手,重点讲解列表、元组、字典和集合四种数据类型的特点、操作方法以及实际应用场景。
列表是Python中最常用的数据结构,可存储不同类型的元素。所有元素用方括号[ ]包裹,元素间用逗号“,”分隔。例如:[1, 2, 3, 'abc', 4]
list()函数或直接用方括号定义。例如:list1 = [1, 2, 3, 4]list2 = list(('1,2,3,4')) # 使用字符串生成列表len()获取列表长度。例如:len(list1) # 返回4
+运算符或extend()方法合并两个列表。例如:list1 = [1, 2]list2 = [3, 4]list1 + list2 # [1, 2, 3, 4]list1.extend(list2) # list1变为[1, 2, 3, 4]
*运算符快速生成多个重复的列表。例如:list1 = [1, 2]list1 * 3 # [1, 2, 1, 2, 1, 2]
[:]提取列表中一部分元素。例如:list1 = [1, 2, 3, 4]list1[1:3] # [2, 3]
in关键字判断元素是否存在。例如:if 3 in list1: print("存在3")count()方法统计元素数量。例如:list1.count(2) # 返回1
append()方法。例如:list1.append(5) # list1变为[1, 2, 3, 4, 5]
insert()方法指定位置。例如:list1.insert(2, 5) # list1变为[1, 5, 2, 3, 4]
+运算符或extend()方法。例如:list1 = [1, 2]list2 = [3, 4]list1 + list2 # [1, 2, 3, 4]list1.extend(list2) # list1变为[1, 2, 3, 4]
pop()方法。例如:list1.pop() # 返回并移除最后一个元素list1.pop(2) # 返回并移除第三个元素
reverse()方法或[::-1]切片。例如:list1.reverse() # list1变为[4, 3, 2, 1]list1 = list1[::-1] # list1变为[4, 3, 2, 1]
sorted()函数排序。例如:list1.sort() # list1按升序排序sorted_list = sorted(list1) # 返回新排序后的列表
元组是与列表类似的数据结构,但所有元素不可变。用圆括号( )表示,例如:(1, 2, 3)
tuple()函数或直接用圆括号定义。例如:tuple1 = (1, 2, 3)tuple2 = tuple(('a', 'b', 'c')) # 通过字符串生成元组in关键字检索元素。例如:print(tuple1[1]) # 输出2if 'a' in tuple2: print("存在'a'")del语句删除元素或整个元组。例如:del tuple1[1] # 删除第二个元素del tuple1 # 删除整个元组
tuple1 = (1, 2, 3, 4)tuple1[1:3] # (2, 3)
len()函数获取元组长度。例如:len(tuple1) # 返回3
+运算符或extend()方法合并元组。例如:tuple1 = (1, 2)tuple2 = (3, 4)tuple3 = tuple1 + tuple2 # (1, 2, 3, 4)
in关键字判断元素是否存在。例如:if 3 in tuple2: print("存在3")tuple1 = (1, 2, 3, 4)tuple1[1:3] # (2, 3)
字典是Python中唯一的映射数据结构,每个成员由“键:值”对形式组成。用大括号{ }表示,例如:{“name”:“Zhangsan”, “sex”:“M”}
dict()或fromkeys()方法创建。例如:dict1 = dict() # 空字典dict2 = dict.fromkeys(['a', 'b', 'c']) # {'a': None, 'b': None, 'c': None}dict1 = {}dict1['name'] = 'Zhangsan' # 添加新键dict1['address'] = 'Nanjing' # 修改值del语句删除键值对或整个字典。例如:del dict1['sex'] # 删除键'sex'及其值del dict1 # 删除整个字典
for循环和items()方法遍历键值对。例如:for key, value in dict1.items(): print(f"{key}: {value}")keys()方法获取所有键。例如:for key in dict1.keys(): print(key)
values()方法获取所有值。例如:for value in dict1.values(): print(value)
get()方法。例如:phone = dict1.get('phone') # 返回'123456'clear()方法。例如:dict1.clear() # 字典变为空
copy()方法进行浅拷贝。例如:dict2 = dict1.copy() # 浅拷贝
update()方法合并另一个字典。例如:dict2 = {'age': 20}dict1.update(dict2) # dict1变为{'name': 'Zhangsan', 'sex': 'M', 'address': 'Nanjing', 'phone': '123456', 'age': 20}集合是Python中无序且不重复的数据结构。集合可分为可变集合和不可变集合。集合和字典的关系:集合是字典的键集合。
for循环遍历。set()函数。例如:set1 = {1, 2, 3}frozenset()函数。例如:frozen_set1 = frozenset([1, 2, 3])
add()方法。例如:set1.add(4) # set1变为{1, 2, 3, 4}remove()方法。例如:set1.remove(2) # set1变为{1, 3, 4}set1 = {1, 2}set2 = {3, 4}set1 | set2 # {1, 2, 3, 4}set1 & set2 # 空集set1 - set2 # {1, 2}set1 <= set2 # Falseisinstance()方法判断元素类型。例如:if isinstance(element, set): print("是集合")已知字典 D={“name”:“Zhangsan”,“sex”:“M”,“address”:“Nanjing”,“phone”:“123456”},请设计以下功能的代码实现:
以下是实现代码:
# 1. 输出所有键值对for key, value in D.items(): print(f"{key}: {value}")# 2. 输出 phone 值print(D['phone'])# 3. 修改 address 值D['address'] = 'Shanghai'# 4. 添加 age 键值对D['age'] = 20# 5. 删除 sex 键值对if 'sex' in D: del D['sex'] 以上代码实现了字典 D 的基本操作,满足了任务需求。
转载地址:http://woefk.baihongyu.com/