python中的 conf中的settings文件主要写啥内容
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中的 conf中的settings文件主要写啥内容相关的知识,希望对你有一定的参考价值。
参考技术A 主要是一些编译和显示配置。。 参考技术B给你一个例子:
import osimport logging
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print('\\033[31;1m当前代码所在路径 BASE_DIR = %s\\033[0m' % BASE_DIR)
ACCOUNT_DATABASE =
'engine': 'file_storage',
'name': 'accounts',
'path': "%s/db" % BASE_DIR
BASE_DATABASE =
'engine': 'file_storage',
'name': 'base',
'path': "%s/db" % BASE_DIR
LOG_LEVEL = logging.INFO
LOG_TYPES =
'system': 'system.log',
AUTHORITY =
'student': 1,
'teacher': 2,
'admin': 8
STATUS =
'normal': 1,
'locked': 2
本回答被提问者采纳
使用 ConfigParser Python 更改 ini 文件中的值
【中文标题】使用 ConfigParser Python 更改 ini 文件中的值【英文标题】:Change value in ini file using ConfigParser Python 【发布时间】:2015-03-13 21:18:11 【问题描述】:所以,我有这个 settings.ini :
[SETTINGS]
value = 1
还有这个python脚本
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
parser.read('settings.ini')
print parser.get('SETTINGS', 'value')
如您所见,我想读取值“1”并将其替换为另一个值。到目前为止,我所能做的就是阅读它。我在网上搜索了如何替换它,但没有找到。
【问题讨论】:
【参考方案1】:Python 官方docs on configparser
说明了如何读取、修改和编写配置文件。
import configparser
config = configparser.ConfigParser()
config.read('settings.ini')
config.set('SETTINGS', 'value','15')
with open('settings.ini', 'w') as configfile:
config.write(configfile)
【讨论】:
【参考方案2】:我遇到了问题:with open
其他方式:
import configparser
def set_value_in_property_file(file_path, section, key, value):
config = configparser.RawConfigParser()
config.read(file_path)
config.set(section,key,value)
cfgfile = open(file_path,'w')
config.write(cfgfile, space_around_delimiters=False) # use flag in case case you need to avoid white space.
cfgfile.close()
可用于修改java属性文件:file.properties
【讨论】:
删除了我原来的 config.ini 文件 @skpro19 我在 linux 上再次尝试并获胜。 ini 和属性文件的行为相同。删除文件没有问题。赢 (python 3.4.1) linux (python 3.6.8)。我正在尝试各种文件/目录访问配置 不需要证明为什么不使用with open ..
。您的解决方案有效。只有评论有一个小错字(“case case”)和Java相关的properties file注释在这里有点混乱,因为问题是关于INI file?️【参考方案3】:
以下示例将帮助更改 ini 文件中的值:
PROJECT_HOME="/test/"
parser = ConfigParser()
parser.read("/conf/cdc_config.ini".format(PROJECT_HOME))
parser.set("default","project_home",str(PROJECT_HOME))
with open('/conf/cdc_config.ini'.format(PROJECT_HOME), 'w') as configfile:
parser.write(configfile)
[default]
project_home = /Mypath/
【讨论】:
【参考方案4】:从文档的例子来看:
https://docs.python.org/2/library/configparser.html
parser.set('SETTINGS', 'value', '15')
# Writing our configuration file to 'example.ini'
with open('example.ini', 'wb') as configfile:
parser.write(configfile)
【讨论】:
对于 Python 3.5+,你必须使用 'w',而不是 'wb'! SafeConfigParser deprecated ``` DeprecationWarning: SafeConfigParser 类已在 Python 3.2 中重命名为 ConfigParser。此别名将在以后的版本中删除。直接使用 ConfigParser。 'os':operating_system, 'arch':arch) ``` 如果你让你的代码成为一个完整的例子,它会显示parser
的声明并且文件名将匹配给定的问题,即'settings.ini'
以实际更改文件内容.以上是关于python中的 conf中的settings文件主要写啥内容的主要内容,如果未能解决你的问题,请参考以下文章