Rustom Mody <rustompm...@gmail.com> wrote: > On Tuesday, September 30, 2014 5:18:31 PM UTC+5:30, Chris wrote: > > > I would actually > > quite like to keep the configuration data separate from the code as it > > would simplify using the data at the 'home' end of things as I'd just > > need to copy the configuration file across. This was why the database > > approach appealed at first as all I need to do is copy the database > > and everything is in there. > > Of course > > > Are there any better ways of doing this? E.g. some sort of standard > > configuration file format that Python knows about? > > Umm this is getting to be a FAQ... > Maybe it should go up somewhere? > > Yes there are dozens: > - ini > - csv > - json > - yml > - xml > - pickle > - And any DBMS of your choice > > I guess Ive forgotten as many as Ive listed!!
Yes, I know, I've found most of those. I'm really asking for help in choosing which to use. I think I can reject some quite quickly:- ini - doesn't work so well with lists/dictionaries (though possible) csv - rather difficult to edit json - one of the most likely possibilities, but prefer yml yml - front runner if I go for configuration files xml - horrible, nasty to edit, etc. I don't like XML! :-) pickle - not user editable as I understand it dbms - current solution in sqlite3 as described What I'm really asking for is how to choose between:- DBMS - present solution, keeps config with data easily but more code and less easy to change yml - easy to edit config, keeps data separate from code but needs YAML installed and separate files to manage python - just keep config in the modules/classes, not easy to use at 'both ends' (home and remote), otherwise quite simple My requirements are:- Easy to change, i.e.human readable format which can be edited simply as I have to do this via a terminal/ssh. Easy to use at local end as well as remote end, the remote end is where it lives and is the 'driver' as it were but I need to know the configuration at the local end as well. -- Chris Green ยท -- https://mail.python.org/mailman/listinfo/python-list