def filter_empty_values(
data: T,
) -> T
Recursively filters out empty values from nested objects and arrays.
This function removes the following empty values:
None values
- Empty strings (after trimming whitespace)
- Empty lists
- Empty dictionaries
- Lists and dictionaries that become empty after filtering their contents
Examples
from intuned_browser import filter_empty_values
async def automation(page, params, **_kwargs):
# Filter empty values from dictionary
result1 = filter_empty_values({"a": "", "b": "hello", "c": None})
# Output: {"b": "hello"}
# Filter empty values from list
result2 = filter_empty_values([1, "", None, [2, ""]])
# Output: [1, [2]]
# Filter nested structures
result3 = filter_empty_values({"users": [{"name": ""}, {"name": "John"}]})
# Output: {"users": [{"name": "John"}]}
Arguments
The data structure to filter (dict, list, or any other type)
Returns: T
Filtered data structure with empty values removed