I've had a play with this one. Considering I am dealing with an ini file, it appears that configparser does what I want. This is the snippet I've come up with:
def conf():
config = configparser.ConfigParser(converters={'list': lambda x: [i.strip() for i in x.split(',')]},
allow_no_value=True)
config.read('generateandsend/Resources/generateandsend.ini')
section = config['test']
string_a = section.get('StringA', None)
string_b = section.get('StringB', None)
return string_a, string_b
Is hard coding the relative path in that way frowned apon?
Beautiful. Thanks. I had to massage it a little and remove os.pardir, as it was giving me a false directory on my windows machine (C:\tmp\generateandsend\..\Resources\generateandsend.ini).
Again, thanks for the reply.
I've had a play with this one. Considering I am dealing with an ini file, it appears that configparser does what I want. This is the snippet I've come up with:
Is hard coding the relative path in that way frowned apon?
Most certainly, especially because you have to account for differences in path format between operating systems.
I'd recommend incorporating
pkg_resources
into your approach above.I believe that will work? You'll have to check how
config.read()
handles an absolute path.Beautiful. Thanks. I had to massage it a little and remove
os.pardir
, as it was giving me a false directory on my windows machine (C:\tmp\generateandsend\..\Resources\generateandsend.ini
).The resultant path variable now looks like:
I just need to test this on my Linux box
Cheers again. Send the bill to...... 😉