如何只计算不同的行?

时间:2019-05-16 21:04:19

标签: python-3.x list

我从Python开始,所以在一个文件中我想计算不同的行。

部分文字:

filter:usergroup xxxx username Joshep
filter:usergroup xxxx username Mark
filter:usergroup xxxx username Amy
filter:usergroup aaaaa username Chris
filter:usergroup bbb username Chris

我可以计算用户名绑定的不同数量。

with open(arch_path) as archive:
    for line in archive:
        if 'filter:usergroup' in line:
            filter_c=filter_c+1

但是我想算一下,在文字中有3个不同的用户组。

1 个答案:

答案 0 :(得分:1)

我将组名累积到一个集合中(每个唯一名称仅保留一个元素),但是在浏览文件后打印出其大小:

group_names = set()
with open(arch_path) as archive:
    for line in archive:
        if 'filter:usergroup' in line:
            group_name = line.split()[1]
            group_names.add(group_name)

filter_c = len(group_names)