简要介绍
元组:包含零个或多任意类型元素,且不可变。用()定义
列表:包含零个或多个任意类型元素,可进行增删改操作,用【】定义。
字典:每个元素拥有与之对应的不同的键,通过键值来访问,元素的顺序无关紧要,可变。
集合:像只有键的字典一样,如果你只关心这个元素有没有,而不关心其他的,可以用集合。
元组
用()创建一个空元组
empty_tuple = ( )
创建含有一个元素的元组(注意最后一定要有逗号)
one_tuple = 'hello',
创建多个元素的元组(最后一个元素括号可以省略)
marx_tuple = 'hello','world','!'
可以一口气将元组赋值给多个变量
利用元组在一条语句中对多个变量值进行交换
为什么会这样呢?
因为定义元组真正靠的是每个元素的后缀逗号
列表
使用【】或者list()创建列表
empty_list = []
one_list = ['hellow']
two_list = ['hello',‘world’]
使用list()函数将其他数据类型转换成列表
使用split()函数可以依据分隔符将字符串分成列表
获取列表元素
包含列表的列表
修改元素、指定范围切片提取元素
使用append()函数添加元素到尾部
extend()或者+合并列表
insert()在指定位置添加元素,list.insert(3,'hello'),将hello添加到下标为3的位置
del 删除指定位置元素
remove()删除具有指定值的元素
使用pop获取并删除指定位置元素,默认pop()偏移量为-1.
使用index()查询具有特定值的元素的位置
用in判断值是否存在
使用count()记录特定值出现的次数
练习
建立一个含有7个元素的列表,反向输出。
例如【1,2,3,4,5,6,7】
输出【7,6,5,4,3,2,1】
方法:1、使用pop和insert()函数,将最后一个元素提取并删除,再加到前面
2、使用元组对变量值进行交换,及第一和第七交换,第二和第六交换
建立虚拟环境,激活,建立工程
代码,调试,运行
知识:
字典
空字典
empty_dict = { }
非空字典
a = { "day":"good day",
"positive":"good positive",
}
使用dict()转化为字典
现在我们定义一个字典
score = {"liming":90,
"zhanghua":80,
"wangda":70,
}
获取元素
a['liming']
keys()获取所有键
a.keys()
使用values()获取所有值
添加或者修改元素
score['panda'] = 60
score['liming'] = 100
使用update()合并字典
使用del删除具有指定键的元素
del a['pengqing']
使用clear()删除所有元素
a.clear()
使用items()获取所有键值对,每个键值以元组的形式返回
使用in 判断是否存在
'pengqing' in a
集合
元素必须不同,没有顺序。
创建空集合
empty_set = set()
empty_set
创建非空集合
numbers = {0,1,2,3,4}
这里不能使用{}创建空集合,因为它会创建空字典。
同样可以使用in 来测试值是否存在
练习
建立一个drinks字典,键是混合饮料的名字,值是配料组成的集合
输入成分,输出含有这个成分的所有混合酒的名字
例如,输入伏特加,则输出所有含有伏特加的饮料名称
提示:
使用items()将键值对变成元组,利用for循环取得每个元组中的饮料名称和成分,使用in判断成分中是否含有输入值,如果有就输出饮料名称。
。
。
。
。
。
。
。
如果想要含有伏特加但是不含苦艾酒(vermouth)的饮料,要怎么写呢?