This will cause major problems when a value is `0`, as it won't get added as a key/value pair. You need to ensure the value is genuinely empty rather than evaluates to `False`. Could you use `None` to indicate empty value instead of an empty string and test `if v is not None:` instead?