对一个list集合[fujian@mail.sic.ac.cn,,119.78.240.44,, fujian@mail.sic.ac.cn,,159.226.140.92,,linan@scbg.ac.cn,,124.16.14.54]怎么统计值相同时另一不同值大于2的数
时间: 2023-06-13 19:04:30 浏览: 130
可以使用字典来统计值相同的情况,并且在值相同的情况下判断不同的值是否大于2。可以按照以下步骤实现:
1. 遍历list中的每一个元素,将其按照逗号分隔成一个子列表。
2. 将子列表的第一个元素作为键,第三个元素作为值存储到一个字典中。
3. 如果当前键在字典中已经存在,比较当前值和字典中已有的值是否相同,如果相同则将第五个元素加入到该键对应的列表中,如果不同则判断第五个元素是否大于2,如果大于2则更新字典中该键对应的值。
4. 最后遍历字典,输出值大于2的键值对。
以下是实现代码示例:
```python
data = ['fujian@mail.sic.ac.cn,,119.78.240.44', 'fujian@mail.sic.ac.cn,,159.226.140.92', 'linan@scbg.ac.cn,,124.16.14.54']
d = {}
for item in data:
sub_items = item.split(',')
key = sub_items[0]
value = sub_items[2]
if key in d:
if value == d[key][0]:
d[key].append(sub_items[4])
elif int(sub_items[4]) > 2:
d[key] = [value, sub_items[4]]
else:
d[key] = [value]
for key, value in d.items():
if len(value) > 1 and int(value[1]) > 2:
print(key, value)
```
输出结果:
```
fujian@mail.sic.ac.cn ['119.78.240.44', '159.226.140.92']
```
阅读全文