本文分为两部分,第一部分是讨论元组的性质和一些常见的方法,第二部分是讨论字典的性质和一些常见方法。
一.元组的性质和方法
1.元组的定义:
元组的定义方式如下:
tu=(12,23,[32,33],‘dhue‘,Ture,(32,‘re‘))
元组的标志符是“()”。元组很多性质和列表一致,两个的区别在于可以修改和删除列表中的元素,但是元组中的元素则不可以修改和删除(注意,这里指的是一级元素)。为了将元组与函数区分开,建议在元组的最后一个元素后面加上“,”。
2.元组的性质:
(1)元组的元素不可修改
这个性质要注意,这里说的元素不可修改,是指的元组的一级元素不可修改,比如对于(12,34,‘str’,[12,22])这个元组,每一个位置的数据类型不可以更改,也就是说不能把第三个字符串改为数字,第四个列表改为其他数据类型,但是可以把列表中的元素改为其他元素。
(2)元组可以用for,while遍历(元组是有序的)
(3)元组可以进行索引操作和切片操作
(4)元组,列表字符串可以相互转化
3.元组类的方法
(1)count(value):
计算value值在元组中出现的次数
(2)index(value,start=None,end=None):
返回value值在元组中第一次出现的位置,可以指定返回。
二.字典的性质和常见方法
1.字典的定义:
1 dic={ 2 ‘key1‘:‘hello‘, 3 ‘key2‘:‘defe‘, 4 True: 43233, 5 ‘key3‘: [43, 6 54, 7 56, 8 { 9 ‘key22‘: 675, 10 ‘key54‘:‘hfuer‘, 11 ‘hey44‘:(43,54) 12 }], 13 ‘key4‘:‘value‘ 14 } 15 print(dic)
字典是根据键值对(key,value)义的,一个键值对代表一个元素,不同的键值对用“,”分隔,键值之间用“:”分隔。
2.字典的性质
(1)列表,字典不可以作为字典的key值
(2)字典的value值可以是任意类型
(3)字典是无序的,因此不可以使用while循环
(4)字典是可迭代对象,可以用for循环,for循环有以下四种方式
a.这种循环等价于for item in dic.keys(),循环遍历的是所有的key.
for item in dic: print(item)
b.循环遍历所有的key值,该循环方法与a相同。
for item in dic.keys(): print(item)
c.循环遍历所有的value值。
for item in dic.values(): print(item)
d.循环遍历所有的key,value值。
for k,v in dic.items(): print(k,v)
(5)字典可以根据key值查到该key值对应的value值:
v=dic[‘key1‘] print(v)
(6)字典是无序的,因此能通过数据索引去查找值(字典的索引是key值)
(7)字典可以del删除,删除key值,则key值对应的value值也会被删除
2.字典类(dict)的方法:
(1)clear():
清楚字典
(2)copy():
复制字典(浅拷贝)
(3)fromkeys():
v=dict.fromkeys([‘key‘,‘key2‘,‘key3‘],123) print(v)
代码执行结果:
该方法用来初始化一个字典,第一个参数中的元素作为key值,如果传入一个列表,则列表中的每一个元素都会作为key值,第二个参数是所有key值的value值,即所有的key值对应的value值都会被初始化为该值。
(4)get(key,d=None):
返回字典的指定的key值,如果在字典中没有找到该key值,可以通过指定d返回指定的数据,默认是返回None.
(5)pop(key,d=None):
删除字典的指定的key值,并返回该key值对应的value值,如果没有找到该key值,可以通过d指定方法的返回值,默认返回Node.
(6)popitem():
随机删除字典中一个键值对。
(7)setdefault(key,d=Node):
为key值设置默认值,如果字典中存在该key值,则返回字典中key值对应的value值,如果字典中不存在该key值,则把键值对加入字典,并返回key值的value值。
(8)update():
v=dict.fromkeys([‘key‘,‘key2‘,‘key3‘],123) print(v) v.update({‘key‘:12,‘kkk‘:‘hshsh‘,‘hdue‘:454}) print(v)
更新字典key值对应的value值,如果字典中存在key值,则更新value,如果字典中不存在key值,则将键值对加入字典。