Re: Best practice for config files?

Jason H via Python-list <[email protected]>
Newsgroups gmane.comp.python.general
Organization A noiseless patient Spider
Message-ID <[email protected]>
On 22/05/2025 20:59, Michael F. Stemper wrote:
>I recently wrote a program to do some record-keeping for me. I found
>myself hard-coding a bunch of different values into it. This didn't
>seem right, so I made my first use of configparser.ConfigParser().
>Created the configuration file and everything is working fine.
>
>However, I wrote it based on the assumption that the program is
>running in the directory where the config file is stored, and has
>a specific name. I started having some second thoughts here.
>
>I thought about putting the location of the configuration file in
>the configuration file, but that seemed like a non-starter.[1]
>
>Should I specify the location of the config file with a command-line
>option, or is requiring the program to be executed in the directory
>containing the configuration file considered acceptable practice?
>
>
>
>[1] See Tegan Jovanka in _Castrovalva_ for more on this idea.

So, I use an environment variable because my config is shared between Python
 and Java auto test frameworks. I think keeping the config adjacent to the
 .py files is also workable because a Python program can know where it is:

from pathlib import Path

script_path = Path(__file__).resolve()
script_directory = script_path.parent

print(f"The script is located at: {script_path}")
print(f"The script is located in the directory: {script_directory}")


--
A PICKER OF UNCONSIDERED TRIFLES
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.