Python 3 入门,看这篇就够了 (8)

用 del 语句删除字典或字典的元素。

dis = {'a': 1, 'b': [1, 2, 3], 9: {'name': 'hello'}} del dis[9]['name'] print(dis) del dis # 删除字典 # {'a': 1, 9: {}, 'b': [1, 2, 3]} 字典函数

len(dict) 计算字典元素个数,即键的总数

str(dict) 输出字典,以可打印的字符串表示

type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型

key in dict 判断键是否存在于字典中

字典方法

dict.clear()

删除字典内所有元素

dict.copy()

返回一个字典的浅复制

dict.fromkeys(seq[, value])

创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值

dict.get(key, default=None)

返回指定键的值,如果值不在字典中返回默认值

dict.items()

以列表形式返回可遍历的(键, 值)元组数组

dict.keys()

以列表返回一个字典所有的键

dict.values()

以列表返回字典中的所有值

dict.setdefault(key, default=None)

如果 key 在字典中,返回对应的值。如果不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。

dict.update(dict2)

把字典参数 dict2 的键/值对更新到字典 dict 里

dic1 = {'a': 'a'} dic2 = {9: 9, 'a': 'b'} dic1.update(dic2) print(dic1) # {'a': 'b', 9: 9}

dict.pop(key[,default])

删除字典给定键 key 所对应的值,返回值为被删除的值。key 值必须给出,否则返回 default 值。

dict.popitem()

随机返回并删除字典中的一对键和值(一般删除末尾对)

字典推导式

构造函数 dict() 直接从键值对元组列表中构建字典。如果有固定的模式,列表推导式指定特定的键值对:

>>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)]) {'sape': 4139, 'jack': 4098, 'guido': 4127}

此外,字典推导可以用来创建任意键和值的表达式词典:

>>> {x: x**2 for x in (2, 4, 6)} {2: 4, 4: 16, 6: 36}

如果关键字只是简单的字符串,使用关键字参数指定键值对有时候更方便:

>>> dict(sape=4139, guido=4127, jack=4098) {'sape': 4139, 'jack': 4098, 'guido': 4127} 集合(set)

集合是一个无序不重复元素的序列

创建集合

可以使用大括号 {} 或者 set() 函数创建集合

创建一个空集合必须用 set() 而不是 {},因为 {} 是用来创建一个空字典

set(value) 方式创建集合,value 可以是字符串、列表、元组、字典等序列类型

创建、添加、修改等操作,集合会自动去重

{1, 2, 1, 3} # {} {1, 2, 3} set('12345') # 字符串 {'3', '5', '4', '2', '1'} set([1, 'a', 23.4]) # 列表 {1, 'a', 23.4} set((1, 'a', 23.4)) # 元组 {1, 'a', 23.4} set({1:1, 'b': 9}) # 字典 {1, 'b'} 添加元素

将元素 val 添加到集合 set 中,如果元素已存在,则不进行任何操作:

set.add(val)

也可以用 update 方法批量添加元素,参数可以是列表,元组,字典等:

set.update(list1, list2,...) 移除元素

如果存在元素 val 则移除,不存在就报错:

set.remove(val)

如果存在元素 val 则移除,不存在也不会报错:

set.discard(val)

随机移除一个元素:

set.pop() 元素个数

与其他序列一样,可以用 len(set) 获取集合的元素个数。

清空集合 set.clear() set = set() 判断元素是否存在 val in set 其他方法

set.copy()

复制集合

set.difference(set2)

求差集,在 set 中却不在 set2 中

set.intersection(set2)

求交集,同时存在于 set 和 set2 中

set.union(set2)

求并集,所有 set 和 set2 的元素

set.symmetric_difference(set2)

求对称差集,不同时出现在两个集合中的元素

set.isdisjoint(set2)

如果两个集合没有相同的元素,返回 True

set.issubset(set2)

如果 set 是 set2 的一个子集,返回 True

set.issuperset(set2)

如果 set 是 set2 的一个超集,返回 True

集合计算 a = set('abracadabra') b = set('alacazam') print(a) # a 中唯一的字母 # {'a', 'r', 'b', 'c', 'd'} print(a - b) # 在 a 中的字母,但不在 b 中 # {'r', 'd', 'b'} print(a | b) # 在 a 或 b 中的字母 # {'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'} print(a & b) # 在 a 和 b 中都有的字母 # {'a', 'c'} print(a ^ b) # 在 a 或 b 中的字母,但不同时在 a 和 b 中 # {'r', 'd', 'b', 'm', 'z', 'l'} 集合推导式 a = {x for x in 'abracadabra' if x not in 'abc'} print(a) # {'d', 'r'} 流程控制 if 控制 if 表达式1: 语句 if 表达式2: 语句 elif 表达式3: 语句 else: 语句 elif 表达式4: 语句 else: 语句

1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在 Python 中没有 switch - case 语句。

三元运算符:

<表达式1> if <条件> else <表达式2>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsxsjp.html