在Python中,set()函数用于创建一个集合对象,它是由一组唯一且无序的元素组成的。
set()函数可以接受一个可迭代对象(如列表、元组、字符串等),并返回一个包含这些元素的集合对象。在集合中,每个元素都是唯一的,重复的元素会被自动去除。
# 使用列表创建一个集合
my_set = set([1, 2, 3, 4, 4, 5])
print(my_set) # 输出:{1, 2, 3, 4, 5}
# 使用字符串创建一个集合
my_set = set("hello")
print(my_set) # 输出:{'h', 'l', 'o', 'e'}
# 使用元组创建一个集合
my_set = set((1, 2, 3, 4, 4, 5))
print(my_set) # 输出:{1, 2, 3, 4, 5}
def demo_set():
a = [11,22,33,44,33,22,55]
# set()无序去重集合--支持并、交、差、对称差集
b = set(a)
print("输出b是:\n{}".format(b))
c = {22,33,66,55}
print("c的类型是:{0}\n输出c是:\n{1}\n".format(type(c),c))
print("集合类型的b和c的交集:{}".format(b&c))
print("集合类型的b和c的并集:{}".format(b|c))
print("集合类型的b和c的差集:{}".format(b-c))
print("集合类型的b和c的对称差集:{}".format(b^c))
print(demo_set())
对应的输出结果是:
添加元素,若存在不进行任何操作,语法格式:s.add(x)
添加元素,且参数可以是列表,元组,字典等,语法格式如下:s.update(x1,x2,...)
def test_set():
learn_set = set(("Google", "Python", "T"))
print(learn_set) # 输出结果:{'Google', 'Python', 'T'}
learn_set.add("Facebook")
print(learn_set) # 输出结果:{'Facebook', 'Google', 'Python', 'T'}
learn_set.update(["Facebook", 2],["Google",3])
print(learn_set) # 输出结果:{2, 3,'Google', 'Python', 'Facebook', 'T'}
learn_set.update({"Google", 4})
print(learn_set) # 输出结果:{2,3, 4, 'Google', 'Python', 'Facebook', 'T'}
print(test_set())
语法格式:len(s)
def test_len():
learn_set = set(("Google", "Python", "T"))
print(len(learn_set)) # 输出结果:3
print(test_len())
语法格式:x in s
def test_in():
learn_set = set(2,"Google", "Python", "T")
result = 2 in learn_set
print(result) # 输出结果:True
print(test_in())
在实际应用中除了基本的集合操作,set()函数还提供了其他一些常用方法,可以查看Python学习文档。
在自动化测试实现中,set()可以用于以下场景:
去重:在测试用例中,可能会存在重复的数据,在执行测试过程中,若希望保证每个测试用例只执行一次,这时可以使用set()对测试用例进行去重。
数据比较:在测试用例中,可能需要比较两个数据集合是否相等,set()可以用于比较两个数据集合的差异,判断是否存在不一致的数据。
数据筛选:在测试用例中,可能需要根据特定条件筛选数据,set()可以用于对数据集合进行筛选,从而获取符合条件的数据。
数据排序:在测试用例中,可能需要对数据进行排序,set()可以用于对数据集合进行排序,从而方便进行进一步的操作。
总之,set()在自动化测试实现中可以用于处理数据集合,进行去重、比较、筛选和排序等操作,从而提高测试用例的效率和准确性。