# 1 有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中
#
# 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
# a = {11, 22, 33, 44, 55, 66, 77, 88, 99, 90}
# list1 = {'k1': [], 'k2': []}
# for i in a:
# if i > 66:
# list1['k1'].append(i)
# else:
# list1['k2'].append(i)
# print(list1)
# 2 统计s='hello alex alex say hello sb sb'中每个单词的个数
#
# 结果如:{'hello': 2, 'alex': 2, 'say': 1, 'sb': 2}
# s = 'hello alex alex say hello sb sb'
# dict1 = {}
# a = s.split()
# for i in a:
# if i not in dict1:
# dict1.setdefault(i, 1)
# else:
# dict1[i] += 1
# print(dict1)
# 一.关系运算
# 有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
# pythons = {'alex', 'egon', 'yuanhao', 'wupeiqi', 'gangdan', 'biubiu'}
# linuxs = {'wupeiqi', 'oldboy', 'gangdan'}
# 1. 求出即报名python又报名linux课程的学员名字集合
# print(pythons & linuxs)
# 2. 求出所有报名的学生名字集合
# print(pythons | linuxs)
# 3. 求出只报名python课程的学员名字
# print(pythons - linuxs)
# 4. 求出没有同时这两门课程的学员名字集合
# print(pythons ^ linuxs)
# 二.去重
#
# 1. 有列表l=['a','b',1,'a','a'],列表元素均为可hash类型,去重,得到新列表,且新列表无需保持列表原来的顺序
# l = ['a', 'b', 1, 'a', 'a']
# print(set(l))
# 2.在上题的基础上,保存列表原来的顺序
# l = ['a', 'b', 1, 'a', 'a']
# l1 = []
# for i in l:
# if i not in l1:
# l1.append(i)
# print(l1)
# 3.去除文件中重复的行,肯定要保持文件内容的顺序不变
# ??
# 4.有如下列表,列表元素为不可hash类型,去重,得到新列表,且新列表一定要保持列表原来的顺序
#
# l = [
# {'name': 'egon', 'age': 18, 'sex': 'male'},
# {'name': 'alex', 'age': 73, 'sex': 'male'},
# {'name': 'egon', 'age': 20, 'sex': 'female'},
# {'name': 'egon', 'age': 18, 'sex': 'male'},
# {'name': 'egon', 'age': 18, 'sex': 'male'},
# ]
# l1 = []
# for i in l:
# if i not in l1:
# l1.append(i)
# print(l1)