Sto caricando un file di configurazione. Sto considerando i seguenti modi per farlo. Versione 1:
config = json.load('myconfig.json')
config_elm = config.get('some_config_elm')
if config_elm is not None:
# use config_elm
... vs versione 2:
config = json.load('myconfig.json')
if 'some_config_elm' in config and config['some_config_elm'] is not None:
config_elm = config['some_config_elm']
# use config_elm
I file json validi sono i seguenti.
Con data set su qualcosa:
{
'a_config_elm': 13,
'some_config_elm': [42, 43]
}
... impostato sulla lista vuota:
{
'a_config_elm': 13,
'some_config_elm': []
}
... senza dati:
{
'a_config_elm': 13
}
... con dati cancellati:
{
'a_config_elm': 13,
'some_config_elm': null
}
I casi 2 e 3 dovrebbero fare lo stesso.
La versione 1 sembra essere più efficiente, ma la versione 2 sembra un po 'più chiara. Il problema con 1 è che una lista vuota non passerebbe l'istruzione if, ma forse dovrebbe. Qualche idea?