软件测试-DAY39-Python5
(接DAY8)
五、高级(序列)数据类型
字典(dict)
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值对key=>value
用冒号:
分割,每个对之间用逗号,
分割,整个字典包括在花括号{}
中 ,格式如下所示:
d = {key1 : value1, key2 : value2, key3 : value3 }
注意:dict
作为 Python 的关键字和内置函数,变量名不建议命名为 dict。
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字。
一个简单的字典示例:
tinydict = {'name': 'qqAys', 'likes': 999, 'url': 'www.qqAys.xyz'}
访问字典里的值
把相应的键放入到方括号中,如下示例:
示例:
tinydict = {'Name': 'qqAys', 'Age': 2, 'Class': 'First'}
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])
以上实例输出结果:
tinydict['Name']: qqAys
tinydict['Age']: 2
集合(set)
集合是一个无序的不重复元素序列。
可以使用大括号{ }
或者set()
函数创建集合,注意:创建一个空集合必须用set()
而不是{ }
,因为{ }
是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者
set(value)
集合的基本操作
集合运算
set08 = {1, 2, 3, 4, 5, 6, 7, 8, 9}
set09 = {0, 2, 4, 6, 8, 10}
并集(
|
)res1 = set08 | set09 print('新集合元素:', res1)
交集(
&
)res2 = set08 & set09 print('交集结果是:', res2)
差集(
-
)res3 = set08 - set09 print('差集结果是:', res3)
添加元素
语法格式如下:
s.add( x )
将元素x
添加到集合s
中,如果元素已存在,则不进行任何操作。
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> thisset.add("Facebook")
>>> print(thisset)
{'Taobao', 'Facebook', 'Google', 'qqAys'}
还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等,语法格式如下:
s.update( x )
x
可以有多个,用逗号分开。
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> thisset.update({1,3})
>>> print(thisset)
{1, 3, 'Google', 'Taobao', 'qqAys'}
>>> thisset.update([1,4],[5,6])
>>> print(thisset)
{1, 3, 4, 5, 6, 'Google', 'Taobao', 'qqAys'}
>>>
移除元素
语法格式如下:
s.remove( x )
将元素x
从集合s
中移除,如果元素不存在,则会发生错误。
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> thisset.remove("Taobao")
>>> print(thisset)
{'Google', 'qqAys'}
>>> thisset.remove("Facebook") # 不存在会发生错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'Facebook'
>>>
此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误。格式如下所示:
s.discard( x )
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> thisset.discard("Facebook") # 不存在不会发生错误
>>> print(thisset)
{'Taobao', 'Google', 'qqAys'}
我们也可以设置随机删除集合中的一个元素,语法格式如下:
s.pop()
示例:
thisset = set(("Google", "qqAys", "Taobao", "Facebook"))
x = thisset.pop()
print(x)
输出结果:
$ python3 test.py
qqAys
多次执行测试结果都不一样。
set 集合的 pop 方法会对集合进行无序的排列,然后将这个无序排列集合的左面第一个元素进行删除。
计算集合元素个数
语法格式如下:
len(s)
计算集合s
元素个数。
示例
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> len(thisset)
3
清空集合
语法格式如下:
s.clear()
清空集合s
。
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> thisset.clear()
>>> print(thisset)
set()
判断元素是否在集合中存在
语法格式如下:
x in s
判断元素x
是否在集合s
中,存在返回True,不存在返回
False。
示例:
>>> thisset = set(("Google", "qqAys", "Taobao"))
>>> "qqAys" in thisset
True
>>> "Facebook" in thisset
False
>>>
未完……
版权属于:qqAys
本文链接:https://qqays.xyz/archives/softwaretest-day39-python-5.html
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
您可以自由的转载和修改,但请务必注明文章来源并且不可用于商业目的。