目录
1.元组的使用
1.1 访问元组
1.2 修改元组
1.3 count,index
1.4 定义只有一个数据的元组
2.字典的基本使用
2.1 字典的增删改查
2.2 字典的遍历
3.集合的使用
4.通用方法
1.元组的使用
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
>>> aTuple = ('et',77,99.9)>>> aTuple('et',77,99.9)
1.1 访问元组
tuple = ('hello',100,3.14)
print(tuple[0])
"""
输出结果:
hello
"""

1.2 修改元组
tuple = ('hello',100,3.14)
tuple[1] = 88
"""
输出结果:
tuple[1] = 88
~~~~~^^^
TypeError: 'tuple' object does not support item assignment
"""

说明: python中不允许修改元组的数据,包括不能删除其中的元素。
1.3 count,index
index和count与字符串和列表中的用法相同
>>> a = ('a', 'b', 'c', 'a', 'b')>>> a.index('a', 1, 3) # 注意是左闭右开区间Traceback (most recent call last):File "<stdin>", line 1, in <module>ValueError: tuple.index(x): x not in tuple>>> a.index('a', 1, 4)3>>> a.count('b')2>>> a.count('d')0
1.4 定义只有一个数据的元组
定义只有一个元素的元组,需要在唯一的元素后写一个逗号
>>> a = (11)>>> a11>>> type(a)int>>> a = (11,) # 只有一个元素的元组,必须要在元素后写一个逗号>>> a(11,)>>> type(a)tuple
2.字典的基本使用
定义字典的格式:{键1:值1, 键2:值2, 键3:值3, ..., 键n:值n}
变量info为字典类型:
info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国上海'}info['name'] # 字典使用键来获取对应的值
说明:
-
字典和列表一样,也能够存储多个数据
-
列表中找某个元素时,是根据下标进行的;字典中找某个元素时,是根据'名字'(就是冒号:前面的那个值,例如上面代码中的'name'、'id'、'sex')
-
字典的每个元素由2部分组成,键:值。例如 'name':'班长' ,'name'为键,'班长'为值
-
键可以使用数字、布尔值、布尔值、元组等不可变数据类型,但是一般习惯使用字符串
-
每个字典里的key都是唯一的,如果出现了多个key,后面的value会覆盖前一个key对应的value.
在习惯上:
-
列表更适合保存多个商品、多个姓名、多个时间,这样的相似数据;
-
字典更适合保存一个商品的不同信息、一个人的不同信息,这样的不同数据。
2.1 字典的增删改查
一、查看元素
除了使用key查找数据,还可以使用get来获取数据
info = {'name':'班长','age':18}
print(info['age']) # 获取年龄
# print(info['sex']) # 获取不存在的key,会发生异常
print(info.get('sex')) # 获取不存在的key,获取到空的内容,不会出现异常
print(info.get('sex', '男')) # 获取不存在的key, 可以提供一个默认值。

注意,获取默认值不会修改字典内容。
二、修改元素
字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改
demo:
info = {'name':'班长', 'id':100}
print('修改之前的字典为 %s:' % info)
info['id'] = 200 # 为已存在的键赋值就是修改
print('修改之后的字典为 %s:' % info)

三、添加元素
如果在使用 变量名['键'] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素
demo:添加新的元素
info = {'name':'班长'}
print('添加之前的字典为:%s' % info)
info['id'] = 100 # 为不存在的键赋值就是添加元素
print('添加之后的字典为:%s' % info)

四、删除元素
对字典进行删除操作,有一下几种:
-
del
-
clear()
demo:del删除指定的元素
info = {'name':'班长', 'id':100}
print('删除前,%s' % info)
del info['name'] # del 可以通过键删除字典里的指定元素
print('删除后,%s' % info)

del删除整个字典
info = {'name':'monitor', 'id':100}
print('删除前,%s'%info)
del info # del 也可以直接删除变量
print('删除后,%s'%info)

clear清空整个字典
info = {'name':'monitor', 'id':100}
print('清空前,%s'%info)
info.clear()
print('清空后,%s'%info)

2.2 字典的遍历
info = {'name':'配的龙','high':'183cm','weigh':'65kg'}
print(info)
# 遍历 key
for key in info.keys():
print(key)
"""
输出结果:
name
high
weigh
"""
# 遍历 value
for value in info.values():
print(value)
"""
输出结果:
配的龙
183cm
65kg
"""
# 遍历元素
for x in info.items():
print(x)
"""
输出结果:
('name', '配的龙')
('high', '183cm')
('weigh', '65kg')
"""
# 遍历 key-value
for key,value in info.items():
print(key,value)
"""
输出结果:
name 配的龙
high 183cm
weigh 65kg
"""
3.集合的使用
集合(set)是一个无序的不重复元素序列,可以使用大括号 { } 或者 set() 函数创建集合。
注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}或者set(value)
添加元素
语法格式如下:
s.add(x)
将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。
>>>thisset = set(("Google", "Runoob", "Taobao"))>>> thisset.add("Facebook")>>> print(thisset){'Taobao', 'Facebook', 'Google', 'Runoob'}
还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等,语法格式如下:
s.update( x )
x 可以有多个,用逗号分开。
>>>thisset = set(("Google", "Runoob", "Taobao"))>>> thisset.update({1,3})>>> print(thisset){1, 3, 'Google', 'Taobao', 'Runoob'}>>> thisset.update([1,4],[5,6])>>> print(thisset){1, 3, 4, 5, 6, 'Google', 'Taobao', 'Runoob'}
移除元素
语法格式如下:
s.remove( x )
将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。
>>>thisset = set(("Google", "Runoob", "Taobao"))>>> thisset.remove("Taobao")>>> print(thisset){'Google', 'Runoob'}>>> thisset.remove("Facebook") # 不存在会发生错误Traceback (most recent call last):File "<stdin>", line 1, in <module>KeyError: 'Facebook'>>>
此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误。格式如下所示:
s.discard( x )Copy>>>thisset = set(("Google", "Runoob", "Taobao"))>>> thisset.discard("Facebook") # 不存在不会发生错误>>> print(thisset){'Taobao', 'Google', 'Runoob'}
我们也可以设置随机删除集合中的一个元素,语法格式如下:
s.pop()Copythisset = set(("Google", "Runoob", "Taobao", "Facebook"))x = thisset.pop()print(x)print(thisset)
set常见方法列表
| 方法 | 描述 |
|---|---|
| add() | 为集合添加元素 |
| clear() | 移除集合中的所有元素 |
| copy() | 拷贝一个集合 |
| pop() | 随机移除元素 |
| remove() | 移除指定元素 |
| union | 返回两个集合的并集 |
| update() | 给集合添加元素 |
| difference() | 返回多个集合的差集 |
| difference_update() | 移除集合中的元素,该元素在指定的集合也存在。 |
| discard() | 删除集合中指定的元素 |
| intersection() | 返回集合的交集 |
| intersection_update() | 删除集合中的元素,该元素在指定的集合中不存在。 |
| isdisjoint() | 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。 |
| issubset() | 判断指定集合是否为该方法参数集合的子集。 |
| issuperset() | 判断该方法的参数集合是否为指定集合的子集 |
| symmetric_difference() | 返回两个集合中不重复的元素集合。 |
| symmetric_difference_update() | 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。 |
4.通用方法
字符串、列表、元组、字典和集合,它们有很多相同点,都是由多个元素组合成的一个可迭代对象,它们都有一些可以共同使用的方法。
在Python里,常见的算数运算符,有一些可以使用于可迭代对象,它们执行的结果也稍有区别。
| 运算符 | Python 表达式 | 结果 | 描述 | 支持的数据类型 |
|---|---|---|---|---|
| + | [1, 2] + [3, 4] | [1, 2, 3, 4] | 合并 | 字符串、列表、元组 |
| - | {1,2,3,4} - {2,3} | {1,4} | 集合求差集 | 集合 |
| * | ['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 复制 | 字符串、列表、元组 |
| in | 3 in (1, 2, 3) | True | 元素是否存在 | 字符串、列表、元组、字典 |
| not in | 4 not in (1, 2, 3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |











![[附源码]Node.js计算机毕业设计高校迎新管理系统Express](https://img-blog.csdnimg.cn/99a919287aa54d9e8de02a2d53c788d3.png)







