day10

''' 
一.关系运算
  有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
  pythons={'alex','egon','yuanhao','wupeiqi','gangdan','biubiu'}
  linuxs={'wupeiqi','oldboy','gangdan'}
  1. 求出即报名python又报名linux课程的学员名字集合
  2. 求出所有报名的学生名字集合
  3. 求出只报名python课程的学员名字
  4. 求出没有同时这两门课程的学员名字集合   

二.去重
   1. 有列表l=['a','b',1,'a','a'],列表元素均为可hash类型,去重,得到新列表,且新列表无需保持列表原来的顺序

   2.在上题的基础上,保存列表原来的顺序

   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'},
]  
'''

# 一.关系运算
#   有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合
#   pythons={'alex','egon','yuanhao','wupeiqi','gangdan','biubiu'}
#   linuxs={'wupeiqi','oldboy','gangdan'}
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']
new_list = list(set(l))
print(new_list)
'''

#    2.在上题的基础上,保存列表原来的顺序
'''
l = ['a', 'b', 1, 'a', 'a']
new_list = []
for line in l:
    if line not in new_list:
        new_list.append(line)

print(new_list)  # ['a', 'b', 1]
'''

#    3.去除文件中重复的行,肯定要保持文件内容的顺序不变
'''
new_list = []
# 1) 通过文件将文件中的每一行数据取出来
with open('file.txt', 'r', encoding='utf-8') as f:
    for line in f:
        # print(line)
        # 2)通过new_list给文件中的数据做去重,并且保证原来的位置
        if line not in new_list:
            new_list.append(line)
print(new_list)
# 3) 将去重后的数据,重新写入当前file.txt文件中
with open('file.txt', 'w', encoding='utf-8') as f:
    for line in new_list:
        f.write(line)
'''

# 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'},
]

new_list = []

for dic in l:
    print(dic)

    if dic not in new_list:
        new_list.append(dic)

print(new_list)
'''

 

posted @ 2020-08-06 21:23  Only-W  阅读(154)  评论(0编辑  收藏  举报