字典:
字典是python唯一一个映射类型;字符串、列表、元组是序列类型;
彼此建立一个一对一或一对多的关系叫映射;
数组是通过序列的方式存储的,通过索引的方式取得里面的元素;0开始
>>> brand = ['李宁','耐克','haha']
>>> slogn = ['一切有可能','just do it','haha']
>>> print('李宁的口号是:',slogn[0])
字典是:dict = {“keys”:”values”,”keys”:”values”}
键值对的形式出现,字典不能使用连接符号和相乘符号;
创建字典:
1.直接放在{}内,键值对的形式,字典是:dict = {“keys”:”values”,”keys”:”values”}
2.dict()函数
字典中的内置方法:
1.dict.keys() 获取字典中所有的keys值
2.dict.values() 获取字典中所有values值
3.dict.items() 获取字典中所有keys:values,,如:dict_items([('sex', 'boy'), ('name', 'liyue'), ('age', '18')])
4.dict.get() 获取字典中某一个keys的values值,如果值不在字典中返回默认值。
语法:Dict.get(keys,default)
>>> dict.get("aa","meiyou")
'meiyou'
5.dict.clear()清空字典
Eg:>>> dict
{'sex': 'boy', 'name': 'liyue', 'age': '18'}
>>> dict.clear()
>>> dict
{}
6.dict.fromkeys(seq,values)
Python中fromkeys()用于创建一个新的字典,以seq序列中的元素作为keys,values作为每一个keys的values
Eg:>>> dict.fromkeys("1,2,3","number")
{'2': 'number', '1': 'number', ',': 'number', '3': 'number'}
7.update()合并两个字典,相当于序列中的连接符号+,把字典dict2的键/值对更新到dict里。
>>> dict ={"name":"liyue"}
>>> dict1={"sex":"girl"}
>>> dict1.update(dict)
>>> dict1
{'name': 'liyue', 'sex': 'girl'}
8.copy() 函数返回一个字典的浅复制
>>> dict
{'name': 'liyue', 'sex': 'girl'}
>>> dict2 =dict.copy()
>>> dict2
{'name': 'liyue', 'sex': 'girl'}
9.in python字典in操作符号用于判断键值是否存在字典中,存在返回true 否则返回false
>>>'name' in dict
>>>true
集合:
在python中用花括号包起一对数据,没有体现映射关系就是集合。
>>> dic
{24, 1, 2, 3, 4}
>>> type(dic)
集合中所有的元素都是唯一的,集合具有唯一性,集合会帮我们把重复的数字剔除;
集合是无序的,你不能通过索引来获取其中的元素;
如何创建集合:
1.直接用花括号把一对元素括起来;dict={1,3,5,33,2}
2.使用工厂函数set();
set1 =set(序列) 序列:列表、元组、字符串 eg:
>>> set1=set((1,2,3,4,2,1,2,4,5))
>>> set1
{1, 2, 3, 4, 5}
例子:
剔除list中重复的元素。list=[1,2,3,4,3,2]
1.不利用集合:list=[1,2,3,4,3,2]
temp[] #创建一个空数组
for i in list:
if i not in temp:
temp.append(i)
2.利用集合如下:
list = list(set(list))
如何访问集合中的值?
1.用for 循环遍历每一个元素;
2用in 或 not in
>>> num
{1, 2, 3, 4}
>>> 1 in num
True
>>> 1 not in num
False
集合中的内置方法:
1.add()增加元素,列表是append()
>>> num
{1, 2, 3, 4}
>>> num.add(5)
>>> num
{1, 2, 3, 4, 5}
2.remove()移除某个元素,列表是del list[-1]
>>> num
{1, 2, 3, 4,5}
>>> num.remove(5)
>>> num
{1, 2, 3, 4}
3.不可变集合 frozenset()
>>> num3 = frozenset([1,2,3,4,3,2])
>>> num3
frozenset({1, 2, 3, 4})
>>> num3.add(0)将会报错