Is there a way to support rc files with python?
I want to write a python package (using python 3.7) that allows the user to store information in an rc file.
Suppose ~/.mypackagerc
is given by
[DIRECTORIES]
foo_dir = ~/path/to/foo
bar_dir = ~/a/path/to/bar
I know how to use configparser
to read this configuration file
import configparser
from pathlib import Path
HOME = Path.home()
config_location = HOME.joinpath('.mypackagerc')
config = configparser.ConfigParser()
config.read(config_location)
foo_dir = Path(config['DIRECTORIES']['foo_dir'])
bar_dir = Path(config['DIRECTORIES']['bar_dir'])
Where should I put this code if I want foo_dir
and bar_dir
accessible to every module in my package?
If my package is located in ~/mypackage
, should I store this code in ~/mypackage/__init__.py
?
python python-3.x configuration rc
add a comment |
I want to write a python package (using python 3.7) that allows the user to store information in an rc file.
Suppose ~/.mypackagerc
is given by
[DIRECTORIES]
foo_dir = ~/path/to/foo
bar_dir = ~/a/path/to/bar
I know how to use configparser
to read this configuration file
import configparser
from pathlib import Path
HOME = Path.home()
config_location = HOME.joinpath('.mypackagerc')
config = configparser.ConfigParser()
config.read(config_location)
foo_dir = Path(config['DIRECTORIES']['foo_dir'])
bar_dir = Path(config['DIRECTORIES']['bar_dir'])
Where should I put this code if I want foo_dir
and bar_dir
accessible to every module in my package?
If my package is located in ~/mypackage
, should I store this code in ~/mypackage/__init__.py
?
python python-3.x configuration rc
foo_dir
andbar_dir
would have to be defined in some modulefoo
; then each module that needs them need to importfoo
itself. There's no way to "push" values out to all other modules used by a program.
– chepner
Jan 2 at 20:02
add a comment |
I want to write a python package (using python 3.7) that allows the user to store information in an rc file.
Suppose ~/.mypackagerc
is given by
[DIRECTORIES]
foo_dir = ~/path/to/foo
bar_dir = ~/a/path/to/bar
I know how to use configparser
to read this configuration file
import configparser
from pathlib import Path
HOME = Path.home()
config_location = HOME.joinpath('.mypackagerc')
config = configparser.ConfigParser()
config.read(config_location)
foo_dir = Path(config['DIRECTORIES']['foo_dir'])
bar_dir = Path(config['DIRECTORIES']['bar_dir'])
Where should I put this code if I want foo_dir
and bar_dir
accessible to every module in my package?
If my package is located in ~/mypackage
, should I store this code in ~/mypackage/__init__.py
?
python python-3.x configuration rc
I want to write a python package (using python 3.7) that allows the user to store information in an rc file.
Suppose ~/.mypackagerc
is given by
[DIRECTORIES]
foo_dir = ~/path/to/foo
bar_dir = ~/a/path/to/bar
I know how to use configparser
to read this configuration file
import configparser
from pathlib import Path
HOME = Path.home()
config_location = HOME.joinpath('.mypackagerc')
config = configparser.ConfigParser()
config.read(config_location)
foo_dir = Path(config['DIRECTORIES']['foo_dir'])
bar_dir = Path(config['DIRECTORIES']['bar_dir'])
Where should I put this code if I want foo_dir
and bar_dir
accessible to every module in my package?
If my package is located in ~/mypackage
, should I store this code in ~/mypackage/__init__.py
?
python python-3.x configuration rc
python python-3.x configuration rc
edited Jan 2 at 20:31


Rinzler786
71111
71111
asked Jan 2 at 19:57
Brian FitzpatrickBrian Fitzpatrick
9192710
9192710
foo_dir
andbar_dir
would have to be defined in some modulefoo
; then each module that needs them need to importfoo
itself. There's no way to "push" values out to all other modules used by a program.
– chepner
Jan 2 at 20:02
add a comment |
foo_dir
andbar_dir
would have to be defined in some modulefoo
; then each module that needs them need to importfoo
itself. There's no way to "push" values out to all other modules used by a program.
– chepner
Jan 2 at 20:02
foo_dir
and bar_dir
would have to be defined in some module foo
; then each module that needs them need to import foo
itself. There's no way to "push" values out to all other modules used by a program.– chepner
Jan 2 at 20:02
foo_dir
and bar_dir
would have to be defined in some module foo
; then each module that needs them need to import foo
itself. There's no way to "push" values out to all other modules used by a program.– chepner
Jan 2 at 20:02
add a comment |
0
active
oldest
votes
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54012396%2fis-there-a-way-to-support-rc-files-with-python%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54012396%2fis-there-a-way-to-support-rc-files-with-python%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
foo_dir
andbar_dir
would have to be defined in some modulefoo
; then each module that needs them need to importfoo
itself. There's no way to "push" values out to all other modules used by a program.– chepner
Jan 2 at 20:02