python day 10作业

一.关系运算

有如下两个集合,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(list(set(l)))

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

new_l=[]
for line in l:
if line not in new_l:
new_l.append(line)
print(new_l)

3.去除文件中重复的行,肯定要保持文件内容的顺序不变

#1,通过文件将文件每一行数据取出来
new_list=[]
with open(“tt”,“r”,encoding=“utf_8”)as f:
for line1 in f:
# print(line1)
通过mew_list给文件中的数据做去重,并保证原来的位置
if line1 not in new_list:
new_list.append(line1)
print(new_list)

将去重后的数据重新写入tt文件中

with open(“tt”,“w”,encoding=“utf_8”)as f:
for line in new_list:
f.write(line)

4.有如下列表,列表元素为不可hash类型,去重,得到新列表,且新列表一定要保持列表原来的顺序

l=[
{‘name’:‘lili’,‘age’:18,‘sex’:‘male’},
{‘name’:‘jack’,‘age’:73,‘sex’:‘male’},
{‘name’:‘tom’,‘age’:20,‘sex’:‘female’},
{‘name’:‘lili’,‘age’:18,‘sex’:‘male’},
{‘name’:‘lili’,‘age’:18,‘sex’:‘male’},
]
new_l=[]
for dic in l:
if dic not in new_l:
new_l.append(dic)

print(new_l)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

右耳要加油

你们的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值