writelines在python中的用法利⽤Python是如何⽐较⽂件内容的?
3.1 问题
编写程序,完成以下要求:
有两个⽂件:a.log和b.log
两个⽂件中有⼤量重复内容
取出只有在b.log中存在的⾏
3.2 ⽅案
使⽤集合去重效率⾼,操作简单。只要将两个⽂件内容转换成列表,再进⾏差补运算即可得到仅在b.log中存在的⾏。步骤⼀:准备两个⽂件
[root@localhost day05]# cp /etc/passwd /tmp/a.log
[root@localhost day05]# cp /etc/passwd /tmp/b.log
修改b.log,使之与a.log有不同的⾏
[root@localhost day05]# vim /tmp/b.log
步骤⼆:编写程序
[root@localhost day05]# vim fdiff.py
with open('/tmp/a.log') as f1:
aset = set(f1)
with open('/tmp/b.log') as f2:
bset = set(f2)
with open('/', 'w') as f3:
f3.writelines(bset - aset)
步骤三:验证
[root@localhost day05]# cat /
查看结果,中将是只有b.log中有,⽽a.log没有的⾏。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论