-
return表示返回的意思,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。
查看全部 -
discard()方法删除元素,和remove()不同的是,当元素不存在时,使用discard()并不会引发错误,所以使用discard()是更加高效的一个方法。
清除所有元素的方法clear()
name_set = set(['Jenny', 'Ellena', 'Alice', 'Candy', 'David', 'Hally', 'Bob', 'Isen', 'Karl']) name_set.clear() set提供方法判断两个set之间的关系,比如两个集合set,判断其中一个set是否为另外一个set的子集或者超集。
s1 = set([1, 2, 3, 4, 5]) s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9]) # 判断s1是否为s2的子集 s1.issubset(s2) # ==> True # 判断s2是否为s1的超集 s2.issuperset(s1) # ==> True
set提供
isdisjoint()
方法,可以快速判断两个集合是否有重合,如果有重合,返回False,否则返回True。s1 = set([1, 2, 3, 4, 5]) s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9]) s1.isdisjoint(s2) # ==> False,因为有重复元素1、2、3、4、5
查看全部 -
set提供了remove()方法允许我们删除set中的元素。
name_set = set(['Jenny', 'Ellena', 'Alice', 'Candy', 'David', 'Hally', 'Bob', 'Isen', 'Karl']) name_set.remove('Jenny') 需要注意的是,如果remove的元素不在set里面的话,那么将会引发错误。
查看全部 -
set提供了add()方法,我们可以使用add()方法,往set里面添加元素。
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena'] name_set = set(names) name_set.add('Gina')
set提供了update()方法,可以一次性给set添加多个元素。
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena'] new_names = ['Hally', 'Isen', 'Jenny', 'Karl'] name_set = set(names) name_set.update(new_names)
查看全部 -
创建set的方式是使用
set()
,并传入一个list,list的元素将会被转换成set的元素。s = set([1, 4, 3, 2, 5]) print(s) # ==> set([1, 2, 3, 4, 5]) 在传入set()的list中,包含了重复的元素,但是打印的时候,相同的元素只保留了一个,重复的元素都被去掉了,这是set的一个重要特点。
查看全部 -
for语句求和求评论查看全部
-
dict提供keys()函数,可以返回dict中所有的key。
dict提供values()函数,可以返回dict中所有的value。
dict提供clear()函数,可以直接清除dict中所有的元素。
查看全部 -
对于基础数据类型,字符串、数字等,这些都是不可变的,可以作为dict的key,而对于复杂数据类型,经过前面的学习,我们知道tuple是不可变的,list是可变的,因此tuple可以作为dict的key,但是list不可以作为dict的key,否则将会报错。
遍历dict有两种方法, 第一种是遍历dict的所有key,并通过key获得对应的value。
d = { 'Alice': 45, 'Bob': 60, 'Candy': 75, 'David': 86, 'Ellena': 49 } for key in d: # 遍历d的key value = d[key] if value > 60: print(key, value) # ==> Candy 75 # ==> David 86
第二种方法是通过dict提供的
items()
方法,items()
方法会返回dict中所有的元素,每个元素包含key和value。for key, value in d.items(): if value > 60: print(key, value) # ==> Candy 75 # ==> David 86
查看全部 -
赋值语句其实有两个功能:
当key不存在时,往dict中添加对应的key: value元素。
当key存在时,会更新dict,用新的value替换原来的value。
因此,在使用赋值语句往dict中添加元素时,为了避免不必要的覆盖问题,我们需要先判断key是否存在,然后再做更新。
查看全部 -
实在不行就改成list 再变换,反正list就可以修改
查看全部 -
判断tuple的个数,输出之后看结果中有哪些被小括号包围
查看全部 -
需要往里面添加Dodo、Mimi的成绩时,可以使用赋值语句往里面添加元素:
d['Mimi'] = 72 d['Dodo'] = 88 print(d)
实际上,value可以是任意类型的元素,可以是list、tuple等,假如Mimi近两次成绩分别是72,73,Dodo近两次的成绩分别是88,90,则可以使用赋值语句往dict中添加list元素。
d['Mimi'] = [72, 73] d['Dodo'] = [88, 90] print(d)
此后,如果Mimi、Dodo的第三次成绩也出来了,分别是75,90,则可以先通过key把对应的value查询出来,然后再往类型是list的value中添加第三次的成绩。
d['Mimi'].append(75) d['Dodo'].append(90) print(d)
查看全部 -
此时,如果想通过名字来查询某个同学的成绩,也就是通过key来查询value,这个时候怎么办呢?
dict提供通过key找到对应value的功能,通过d[key]
的形式,就可以得到对应的value。这和list通过下标找到对应位置的元素是类似的。
回顾一下前面使用下标的方式访问list元素的时候,当下标不存在时,就会引发错误,在dict中,也是一样的,当对应的key不存在时,也会引发错误。它的意思是key不存在,因此我们在需要通过key找到value时,一定要先判断key存不存在,然后才使用上面的方式获取对应的value,以避免错误。
if 'Alice' in d: print(d['Alice']) # ==> 45 if 'Dodo' in d: # Dodo不存在,所以不会走下面的逻辑 print(d['Dodo'])
除了使用这种方法,还有一种方法可以通过key来获取对应的value,这种方法不会引起错误,dict本身提供get方法,把key当作参数传递给get方法,就可以获取对应的value,当key不存在时,也不会报错,而是返回None。
print(d.get('Alice')) # ==> 45 print(d.get('Dodo')) # ==> None
查看全部 -
###字典的语法
d = { 'Alice': 45, 'Bob': 60, 'Candy': 75, 'David': 86, 'Ellena': 49 }
在定义里,我们使用花括号
{}
表示这是一个dict,然后key和value之间使用冒号:
分割,并且每一组key:value
的最后,以逗号,
表示这一组的结束。
我们也可以使用以下的方式定义一个dict。###空字典
d = dict()
查看全部 -
###可变的tuple
T = (1, 'CH', [3, 4]) L = T[2] print(L) # ==> [3, 4] # 尝试替换L中的元素 L[1] = 40 print(L) # ==> [3, 40] print(T) # ==> (1, 'CH', [3, 40])
查看全部
举报