首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从python中的嵌套目录创建配置文件?

如何从python中的嵌套目录创建配置文件?
EN

Stack Overflow用户
提问于 2021-01-01 13:36:05
回答 3查看 385关注 0票数 0

我刚开始学习python,我已经学会了将配置文件数据放入嵌套的dict中。反之亦然?例如fille应该是这样的:

我需要

字典={ 'section1‘:{’名称‘:'abcd’,‘语言’:'section2‘},’section2‘:{ 'aaaa’,‘语言’:'java‘}}

变成这样的事情

section1

名称: abcd

语言: python

section2

名称: aaaa

语言: java

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-01-01 13:57:58

您的预期输出看起来像toml输出。尝试:

代码语言:javascript
复制
import toml
toml.dumps(dictonary)

toml - PyPI

票数 1
EN

Stack Overflow用户

发布于 2021-01-01 14:50:02

您可以使用模块结构解析器

代码语言:javascript
复制
import configparser

dictonary = {
    'section1' : { 'name' : 'abcd' , 'language' : 'python' } ,
    'section2' : { 'name' : 'aaaa' , 'language' : 'java' } }

config = configparser.RawConfigParser()
for section, pairs in dictonary.items():
    config.add_section(section)
    for k,v in pairs.items():
        config.set(section, k, v)

with open('example.cfg', 'w') as configfile:
    config.write(configfile)
票数 1
EN

Stack Overflow用户

发布于 2021-01-01 13:59:23

这是可行的,原因如下:

代码语言:javascript
复制
our_dict = {
  'section1':{
    'name':'abcd',
    'language':'python'
    },
  'section2':{
  'name':'aaaa',
  'language':'java'
    }
  } 
def dictFunc(dictionary):
  ret = ''
  for i in dictionary:
    value = dictionary.get(i)
    ret += '\n' + i + ':\n'
    for j in value:
      k = value.get(j)
      ret += j + ':' + k + '\n'
  return ret
print(dictFunc(our_dict))

首先,我们声明our_dict。然后,我们用function dictFunc()声明one argumentdictionary。我们制作了一个名为variable retreturn。我们从循环dictionary开始,并声明variable value。它是dictionary's second-place key (即{'name':'aaaa','language':'java'})。我们确保将key (即section1)添加到ret中。我们循环我们的second-place keyj,以得到jj's current key,或者k (即name.)。最后,我们得到j's current second-place key,并将它们链接到ret中。现在我们return ret

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65530096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档