How/where to store calibration values - written by program A, read by program B
MRAB
python at mrabarnett.plus.com
Wed Dec 6 15:32:44 EST 2023
On 2023-12-06 20:11, dn via Python-list wrote:
> On 7/12/23 07:12, MRAB via Python-list wrote:
>> On 2023-12-06 12:23, Thomas Passin via Python-list wrote:
>>> On 12/6/2023 6:35 AM, Barry Scott via Python-list wrote:
>>>>
>>>>
>>>>> On 6 Dec 2023, at 09:32, Chris Green via Python-list
>>>>> <python-list at python.org> wrote:
>>>>>
>>>>> My requirement is *slightly* more complex than just key value pairs,
>>>>> it has one level of hierarchy, e.g.:-
>>>>>
>>>>> KEY1:
>>>>> a: v1
>>>>> c: v3
>>>>> d: v4
>>>>> KEY2:
>>>>> a: v7
>>>>> b: v5
>>>>> d: v6
>>>>>
>>>>> Different numbers of value pairs under each KEY.
>>>>
>>>> JSON will allow you to nest dictionaries.
>>>>
>>>> {
>>>> 'KEY1': {
>>>> 'a': v1
>>>> 'c': v3
>>>> 'd': v4
>>>> }
>>>> 'KEY2': {
>>>> 'a': v7
>>>> 'b': v5
>>>> 'd': v6
>>>> }
>>>> }
>>>>
>>>> Personally I would not use .ini style these days as the format does
>>>> not include type of the data.
>>>
>>> Neither does JSON. Besides, JSON is more complicated than necessary
>>> here - in fact, your example isn't even legal JSON since lines are
>>> missing commas.
>>>
>>> Fun fact - for at least some, maybe most, JSON files, using eval() on
>>> them is hugely faster than using Python's standard JSON library. I
>>> learned this when I wanted to ingest a large browser bookmarks JSON
>>> file. It wouldn't matter for a much smaller file, of course.
>>>
>> It would be safer if you used literal_eval.
>
> Ah, memories of Python2...
>
> Does this little hack still work?
>
> What about True/False cf true/false?
>
Nope, nor None cf null.
If it's numbers, strings, lists and dicts, it works.
More information about the Python-list
mailing list