Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from collections import deque
- def naughty_or_nice_list(santa_list, *args, **kwargs):
- nice_not_nice = {"Nice": [], "Naughty": [], "Not found": []}
- legenda_dict = {}
- queue_data = deque(args)
- while queue_data:
- data = queue_data.popleft()
- number = int(data.split("-")[0])
- state = data.split("-")[1]
- legenda_dict[number] = state
- kid_stat = {}
- for i in santa_list:
- num = i[0]
- name = i[1]
- if num not in kid_stat:
- kid_stat[num] = [name]
- else:
- kid_stat[num].append(name)
- double_key_list = []
- for key in kid_stat:
- if len(kid_stat[key]) == 1:
- if key in legenda_dict:
- main_key = legenda_dict[key]
- nice_not_nice[main_key].append(kid_stat[key][0])
- else:
- nice_not_nice["Not found"].append(kid_stat[key][0])
- elif len(kid_stat[key]) >= 2:
- double_key_list.extend(kid_stat[key])
- for i in kwargs:
- if i in double_key_list:
- kid_condition = kwargs[i]
- nice_not_nice[kid_condition].append(i)
- print_result = []
- for i, j in nice_not_nice.items():
- if len(j) > 0:
- result = f"{i}: {', '.join(j)}"
- print_result.append(result)
- return "\n".join(print_result)
- print(naughty_or_nice_list(
- [
- (7, "Peter"),
- (1, "Lilly"),
- (2, "Peter"),
- (12, "Peter"),
- (3, "Simon"),
- ],
- "3-Nice",
- "5-Naughty",
- "2-Nice",
- "1-Nice",
- ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement