|
@@ -81,29 +81,57 @@ def print_order_rating(lst):
|
|
new_dict = {}
|
|
new_dict = {}
|
|
for driver in lst:
|
|
for driver in lst:
|
|
if driver[0] not in new_dict.keys():
|
|
if driver[0] not in new_dict.keys():
|
|
- new_dict[driver[0]] = driver[1]
|
|
|
|
|
|
+ new_dict[driver[0]] = [driver[1]]
|
|
else:
|
|
else:
|
|
- new_dict[driver[0]] = (new_dict[driver[0]] + driver[1])/2
|
|
|
|
|
|
+ new_dict[driver[0]].append(driver[1])
|
|
|
|
+
|
|
|
|
+ for key, value in new_dict.items():
|
|
|
|
+ new_dict[key] = sum(value)/len(value)
|
|
|
|
|
|
new_list = [[key, value] for key, value in new_dict.items()]
|
|
new_list = [[key, value] for key, value in new_dict.items()]
|
|
- new_list = sorted(new_list, key=lambda x: -x[1])
|
|
|
|
|
|
+ new_list = sorted(new_list, key=lambda x: (-x[1], x[0].lower()))
|
|
|
|
|
|
for item in new_list:
|
|
for item in new_list:
|
|
print(f'{item[0]} {item[1]}')
|
|
print(f'{item[0]} {item[1]}')
|
|
|
|
|
|
|
|
|
|
- print(new_list)
|
|
|
|
|
|
+def print_statistic(lst):
|
|
|
|
+ new_dict = {}
|
|
|
|
+ for autor in lst:
|
|
|
|
+ if autor[0] not in new_dict.keys():
|
|
|
|
+ new_dict[autor[0]] = set()
|
|
|
|
+ new_dict[autor[0]].add(autor[1])
|
|
|
|
+ else:
|
|
|
|
+ new_dict[autor[0]].add(autor[1])
|
|
|
|
+
|
|
|
|
+ for key, value in new_dict.items():
|
|
|
|
+ new_dict[key] = len(value)
|
|
|
|
+
|
|
|
|
+ new_list = sorted(new_dict.items(), key=lambda x: (-x[1], x[0].lower()))
|
|
|
|
|
|
- # sorted_list = sorted(new_dict, key=new_dict.get)
|
|
|
|
|
|
+ for item in new_list:
|
|
|
|
+ print(f'Количество уникальных комментаторов у {item[0]} - {item[1]}')
|
|
|
|
|
|
- # print(sorted_list)
|
|
|
|
|
|
+ # print(new_list)
|
|
|
|
|
|
- # for item in sorted_list:
|
|
|
|
- # print(item)
|
|
|
|
|
|
+ # print(new_dict)
|
|
|
|
|
|
|
|
+ # new_list = []
|
|
# for key, value in new_dict.items():
|
|
# for key, value in new_dict.items():
|
|
- # print(key, value)
|
|
|
|
|
|
+ # new_list
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+def set_test():
|
|
|
|
+ my_set = set()
|
|
|
|
+
|
|
|
|
+ for i in range(5):
|
|
|
|
+ my_set.add(i)
|
|
|
|
|
|
|
|
+ for i in range(5):
|
|
|
|
+ my_set.add(i)
|
|
|
|
+
|
|
|
|
+ print(my_set)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -150,36 +178,37 @@ def main():
|
|
print_best_and_worst_laureate(laureates)
|
|
print_best_and_worst_laureate(laureates)
|
|
"""
|
|
"""
|
|
|
|
|
|
|
|
+ """
|
|
drivers = [
|
|
drivers = [
|
|
- ('Джек', 2),
|
|
|
|
- ('Джек', 3),
|
|
|
|
- ('Гермиона', 5),
|
|
|
|
- ('Билл', 4),
|
|
|
|
- ('Билл', 4),
|
|
|
|
- ('Гермиона', 3),
|
|
|
|
- ('Джек', 2),
|
|
|
|
- ('ЯЯ', 5),
|
|
|
|
- ('ФФФ', 5),
|
|
|
|
- ('Билл', 4),
|
|
|
|
- ('Укк', 4),
|
|
|
|
- ('Билл', 3),
|
|
|
|
- ('Джек', 2),
|
|
|
|
- ('Джек', 2),
|
|
|
|
- ('Гермиона', 5),
|
|
|
|
- ('Билл', 2),
|
|
|
|
- ('ФФФ', 4),
|
|
|
|
- ('Билл', 3),
|
|
|
|
- ('ФФФ', 3),
|
|
|
|
- ('Джек', 2),
|
|
|
|
- ('Джек', 1),
|
|
|
|
- ('Гермиона', 5),
|
|
|
|
- ('Билл', 2),
|
|
|
|
- ('Курт', 5),
|
|
|
|
- ('Билл', 3),
|
|
|
|
|
|
+ ('Зина', 5),
|
|
|
|
+ ('Зина', 3),
|
|
|
|
+ ('Гермиона', 4),
|
|
|
|
+ ('Гермиона', 4),
|
|
|
|
+ ('александр', 4),
|
|
]
|
|
]
|
|
|
|
|
|
print_order_rating(drivers)
|
|
print_order_rating(drivers)
|
|
|
|
+ """
|
|
|
|
+
|
|
|
|
+ data = [
|
|
|
|
+ ('7', 'opushka'),
|
|
|
|
+ ('1', 'opushka'),
|
|
|
|
+ ('2', 'opushka'),
|
|
|
|
+ ('3', 'opushka'),
|
|
|
|
+ ('2', 'opushka'),
|
|
|
|
+ ('1', 'opushka'),
|
|
|
|
+ ('2', 'opushka'),
|
|
|
|
+ ('5', 'opushka'),
|
|
|
|
+ ('6', 'opushka'),
|
|
|
|
+ ('6', 'opushka'),
|
|
|
|
+ ]
|
|
|
|
+
|
|
|
|
|
|
|
|
+ print_statistic(data)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|
|
main()
|
|
main()
|