From d1e96d2f80aba32c247e5b27b98caf23cdea6ff1 Mon Sep 17 00:00:00 2001 From: Yusuf003007 Date: Mon, 12 Oct 2026 22:57:00 +0300 Subject: [PATCH] Add functions to remove duplicates, count, and reverse dict --- Week03/sequences_yusuf_baris.py | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Week03/sequences_yusuf_baris.py diff --git a/Week03/sequences_yusuf_baris.py b/Week03/sequences_yusuf_baris.py new file mode 100644 index 000000000..593eed719 --- /dev/null +++ b/Week03/sequences_yusuf_baris.py @@ -0,0 +1,49 @@ +def remove_duplicates(seq: list) -> list: + """ + Remove duplicates from a list while preserving the order of elements. + + Args: + seq (list): The input list from which duplicates need to be removed. + + Returns: + list: A new list containing only unique elements from the input list. + """ + seen = set() + result = [] + for item in seq: + if item not in seen: + seen.add(item) + result.append(item) + return result + + +def list_counts(seq: list) -> dict: + """ + Count the occurrences of each element in a list. + + Args: + seq (list): The input list for which counts need to be calculated. + + Returns: + dict: A dictionary where keys are unique elements from the list and values are their respective counts. + """ + counts = {} + for item in seq: + if item in counts: + counts[item] += 1 + else: + counts[item] = 1 + return counts + + +def reverse_dict(d: dict) -> dict: + """ + Reverse the keys and values of a dictionary. + + Args: + d (dict): The input dictionary to be reversed. + + Returns: + dict: A new dictionary with keys and values swapped. + """ + return {v: k for k, v in d.items()}