python - AttributeError: 'list' 对象没有属性 'symmetric_difference' 初学者错误
问题描述
我正在尝试比较两个csv
文件并找出它们之间的区别。他们都应该有相同的确切数据,但排序可以不同。
尝试比较old.csv
并new.csv
查看 中是否缺少任何行new.csv
或是否存在任何新行new.csv
。每一行都应该在两个 csv 中完全匹配。
我试过这个,但它给了我错误AttributeError: 'list' object has no attribute 'symmetric_difference'
。我在这里做错了什么?
with open('old.csv', 'r') as t1, open('new.csv', 'r') as t2:
fileone = t1.readlines()
filetwo = t2.readlines()
print(fileone.symmetric_difference(filetwo))
print(filetwo.symmetric_difference(fileone))
解决方案
symmetric_difference()
是一个集合操作,但您正试图在列表中使用它。
制作fileone
和filetwo
成套:
fileone = set(t1.readlines())
filetwo = set(t2.readlines())
推荐阅读
- laravel - 如何使用 Redis TLS 配置 Laravel 5.7(使用 phpredis)
- delphi - Delphi:如何获取TImgView32控件滚动条的位置?
- python - 如何摆脱一个熊猫数据库中的对象(坐标)在另一个对象(坐标)的3个距离单位内?
- java - 一旦计时器达到0,计算每分钟的频率
- java - 通过avro格式将JSON文件转换为Parquet格式
- json - Golang结构解组xss
- neo4j - 为什么创建新记录时我的 Neo4J 合并查询很慢?
- raspberry-pi - 使用 gsm 模块创建 Web 服务器
- javascript - 替代 jsx 的内联 css 转换
- android - 如何使用 Google 的 installreferrer 库测试安装引荐来源网址?