我从文件中读取了一些数据。该文件的每一行包含10个数字,我将所有行保存在二维列表中。
data = []
with open(args.input, 'r') as f:
for line in itertools.islice(f, 0, None):
items = line.split()[1:]
data.append(items)
现在我要删除此2d列表中第一列的重复项,并将结果作为列表返回。
是否有某些功能可以做到这一点,还是应该自己实现?
提前谢谢你!
在 Tichodroma评论后进行修改:
示例输入:
1 2 3 1 1 9 9 9 9 9
1 1 1 1 1 1 1 1 1 1
2 2 3 3 3 3 3 3 3 3
3 2 3 3 3 3 3 3 3 3
2 3 3 4 3 3 2 3 4 3
第一列包含[1 1 2 3 2]
我想要[1 2 3]
订单并不重要。
答案 0 :(得分:1)
data = """1 2 3 1 1 9 9 9 9 9
1 1 1 1 1 1 1 1 1 1
2 2 3 3 3 3 3 3 3 3
3 2 3 3 3 3 3 3 3 3
2 3 3 4 3 3 2 3 4 3"""
col1 = [line.split()[0] for line in data.splitlines()]
# col1 == ['1', '1', '2', '3', '2']
print(set(col1))
输出:
{'1', '2', '3'}