元组
元组是一个不可变序列
1.创建元组
# 使用()创建一个空的元组
one_tuple = ()
print(one_tuple, type(one_tuple))
<class 'tuple'>
# 如果一个元组中含有元素,那么它至少需要一个逗号
one_tuple = (10)
print(one_tuple, type(one_tuple))
ones_tuple = (10, 20)
print(ones_tuple, type(ones_tuple))
10 <class 'int'>
(10, 20) <class 'tuple'>
2.序列解包
# 将序列中的每一个元素,依次赋值
three_tuple = (1, 2, 3)
a, b, c = three_tuple
print('a =', a)
print('b =', b)
print('c =', c)
a = 1
b = 2
c = 3
# 用*号收集多余的元素
# 对元组进行解包时,变量的数量要跟元组中的元素要一一对应
# *号收集的参数只会以 列表 的形式返回
four_touple = (10, 20, 30, 40, 50)
a, b, *c = four_touple
*d, e, f = four_touple
print(a, b, c)
print(d, e, f)
10 20 [30, 40, 50]
[10, 20, 30] 40 50
3. == 和 is
== !== 比较的是对象的值是否相等
is is not 比较的是对象的ID是否相等(即比较两个对象是否是同一个对象)
字典
字典是一种数据结构,称之为映射(mapping)
其作用是用来存储对象的容器
其唯一的名字为键(key),通过键可以找到对应的值,即为value
字典中可以含有多个键值对,每个键值对称为一项(item)
1.创建字典
# 使用{}创建字典
# 语法:{key:value, key:value}
# 获取键不存在时,会返回None
dicts = {'name':'张三', 'age':18, 'gender':'男'}
# 根据键获取值
print(dicts['name'])
# 获取值的第二种方法
print(dicts.get('age'))
张三
18
2.设置默认参数
# d.setdefault(key, Value) 可以用来添加字典中的默认的key值和Value值如果不设置value则默认为None
d = {}
d.setdefault('name')
d.setdefault('age', '18')
print(d)
{'name': None, 'age': '18'}
3.更新字典
# update() 将其他的字典当中的key和value添加到现有的字典当中追加到末尾
# 如果字典更新中key的值一样,则新value会替代旧value
d_one = {'a':1, 'b':2, 'c':3}
d_tow = {'c':4, 'e':5}
d_one.update(d_tow)
print(d_one)
{'a': 1, 'b': 2, 'c': 4, 'e': 5}
4.删除(del)
# del 删除
d_three = {'a':1, 'b':2, 'c':3}
del d_three['a'] # 注意这里用的是中括号
print(d_three)
{'b': 2, 'c': 3}
5.删除(pop)
# pop()
# 根据key删除字典当中的键值对
# 返回的是删除的value的值
# 如果删除不存在的key,会抛出异常key error
# 如果指定了默认值,删除不存在的key值的时候,就会返回默认值
dfour = {'a':1, 'b':2, 'c':3}
result = dfour.pop('a')
print(result)
1
6.清空
# clear() 清空
dfive = {'a':1, 'b':2, 'c':3}
dfive.clear()
{}