• Nov 19, 2022 •CodeCatch
0 likes • 2 views
from collections import defaultdict def collect_dictionary(obj): inv_obj = defaultdict(list) for key, value in obj.items(): inv_obj[value].append(key) return dict(inv_obj) ages = { 'Peter': 10, 'Isabel': 10, 'Anna': 9, } collect_dictionary(ages) # { 10: ['Peter', 'Isabel'], 9: ['Anna'] }
• Apr 15, 2021 •NoahEaton
import anytree as at import random as rm # Generate a tree with node_count many nodes. Each has a number key that shows when it was made and a randomly selected color, red or white. def random_tree(node_count): # Generates the list of nodes nodes = [] for i in range(node_count): test = rm.randint(1,2) if test == 1: nodes.append(at.Node(str(i),color="white")) else: nodes.append(at.Node(str(i),color="red")) #Creates the various main branches for i in range(node_count): for j in range(i, len(nodes)): test = rm.randint(1,len(nodes)) if test == 1 and nodes[j].parent == None and (not nodes[i] == nodes[j]): nodes[j].parent = nodes[i] #Collects all the main branches into a single tree with the first node being the root for i in range(1, node_count): if nodes[i].parent == None and (not nodes[i] == nodes[0]): nodes[i].parent = nodes[0] return nodes[0]
• May 31, 2023 •CodeCatch
0 likes • 0 views
import calendar # Prompt user for year and month year = int(input("Enter the year: ")) month = int(input("Enter the month: ")) # Create a calendar object cal = calendar.monthcalendar(year, month) # Display the calendar print(calendar.month_name[month], year) print("Mon Tue Wed Thu Fri Sat Sun") for week in cal: for day in week: if day == 0: print(" ", end="") else: print(str(day).rjust(2), " ", end="") print()
0 likes • 3 views
def max_n(lst, n = 1): return sorted(lst, reverse = True)[:n] max_n([1, 2, 3]) # [3] max_n([1, 2, 3], 2) # [3, 2]
• Nov 18, 2022 •AustinLeath
0 likes • 6 views
mydict = {'carl':40, 'alan':2, 'bob':1, 'danny':0} # How to sort a dict by value Python 3> sort = {key:value for key, value in sorted(mydict.items(), key=lambda kv: (kv[1], kv[0]))} print(sort) # How to sort a dict by key Python 3> sort = {key:mydict[key] for key in sorted(mydict.keys())} print(sort)
• Jun 26, 2025 •AustinLeath
def format_timestamp(timestamp_epoch): """ Convert epoch timestamp to formatted datetime string without using datetime package. Args: timestamp_epoch (int/float): Unix epoch timestamp (seconds since 1970-01-01 00:00:00 UTC) Returns: str: Formatted datetime string in 'YYYY-MM-DD HH:MM:SS' format """ # Constants for time calculations SECONDS_PER_DAY = 86400 SECONDS_PER_HOUR = 3600 SECONDS_PER_MINUTE = 60 # Handle negative timestamps and convert to integer timestamp = int(timestamp_epoch) # Calculate days since epoch and remaining seconds days_since_epoch = timestamp // SECONDS_PER_DAY remaining_seconds = timestamp % SECONDS_PER_DAY # Calculate hours, minutes, seconds hours = remaining_seconds // SECONDS_PER_HOUR remaining_seconds %= SECONDS_PER_HOUR minutes = remaining_seconds // SECONDS_PER_MINUTE seconds = remaining_seconds % SECONDS_PER_MINUTE # Calculate date (simplified, ignoring leap seconds) year = 1970 days = days_since_epoch while days >= 365: is_leap = (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) days_in_year = 366 if is_leap else 365 if days >= days_in_year: days -= days_in_year year += 1 # Month lengths (non-leap year for simplicity, adjusted later for leap years) month_lengths = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): month_lengths[1] = 29 month = 0 while days >= month_lengths[month]: days -= month_lengths[month] month += 1 # Convert to 1-based indexing for month and day month += 1 day = days + 1 # Format the output string return f"{year:04d}-{month:02d}-{day:02d} {hours:02d}:{minutes:02d}:{seconds:02d}" # Example timestamp (Unix epoch seconds) timestamp = 1697054700 formatted_date = format_timestamp(timestamp) print(formatted_date + " UTC") # Output: 2023-10-11 18:45:00