[Tutor] How to update only set CLI args?
Cameron Simpson
cs at cskk.id.au
Mon Jan 17 16:18:23 EST 2022
On 17Jan2022 08:23, Leam Hall <leamhall at gmail.com> wrote:
>On 1/17/22 08:18, Alan Gauld via Tutor wrote:
>>On 17/01/2022 14:00, Leam Hall wrote:
>>>Writing a CLI app in Python 3.10. There's a "defaults" dict, a config file that gets read into a dict, and command line arguments that can be passed in.
>>>
>>> defaults = {'table':'people'}
>>> defaults.update(config)
>>> defaults.update(vars(args))
>>>
>>>The issue is that if an argument is not set on the command line,
>>>the args.item has a value of "None", which then overwrites any value
>>>in defaults or config. How do I update just the set args?
>>
>>Write a loop to test for none values before updating?
>
>That I can do; I just thought there might be a cleaner way.
Well you could filter() the args.items(). Not sure it is more readable.
Cheers,
Cameron Simpson <cs at cskk.id.au>
More information about the Tutor
mailing list