• Aug 12, 2024 •AustinLeath
0 likes • 5 views
magnitude = lambda bits: 1_000_000_000_000_000_000 % (2 ** bits) sign = lambda bits: -1 ** (1_000_000_000_000_000_000 // (2 ** bits)) print("64 bit sum:", magnitude(64) * sign(64)) print("32 bit sum:", magnitude(32) * sign(32)) print("16 bit sum:", magnitude(16) * sign(16))
• Jun 26, 2025 •AustinLeath
0 likes • 2 views
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
• 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)
• Nov 19, 2022 •CodeCatch
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]
• May 31, 2023 •CodeCatch
import itertools def compute_permutations(string): # Generate all permutations of the string permutations = itertools.permutations(string) # Convert each permutation tuple to a string permutations = [''.join(permutation) for permutation in permutations] return permutations # Prompt the user for a string string = input("Enter a string: ") # Compute permutations permutations = compute_permutations(string) # Display the permutations print("Permutations:") for permutation in permutations: print(permutation)
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'] }