Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
字典列表:以python 2.7打印可读输出_Python_List_Python 2.7_Dictionary - Fatal编程技术网

字典列表:以python 2.7打印可读输出

字典列表:以python 2.7打印可读输出,python,list,python-2.7,dictionary,Python,List,Python 2.7,Dictionary,我正试图从一个3D软件包中输出大量信息,并在数据同步到在线服务器之前,努力找到一种好方法,将数据格式化为可读的格式 关于如何获得以下内容的打印输出,我希望得到任何建议: dicts = [ { "Annot1": 1, "NAME": "name", "TEXT": "text" }, { "Annot2": 2, "NAME": "name", "TEXT": "text" }, { "Annot3": 3, "NAME": "name", "TEXT": "text"

我正试图从一个3D软件包中输出大量信息,并在数据同步到在线服务器之前,努力找到一种好方法,将数据格式化为可读的格式

关于如何获得以下内容的打印输出,我希望得到任何建议:

dicts = [
    { "Annot1": 1, "NAME": "name", "TEXT": "text" },
    { "Annot2": 2, "NAME": "name", "TEXT": "text" },
    { "Annot3": 3, "NAME": "name", "TEXT": "text" },
    { "Annot4": 4, "NAME": "name", "TEXT": "text" }
]
print "\n \n".join(str(i)+" "+str(a) for i, a in enumerate(dicts, start=1))
name = {
    "Annot1": 'name',
    "Annot2": 'name',
    "Annot3": 'name',
    "Annot4": 'name'
}
text = {
    "Annot1": 'text',
    "Annot2": 'text',
    "Annot3": 'text',
    "Annot4": 'text'
}
for key in sorted(name):
    print key
    print "NAME: %s" % name[key]
    print "TEXT: %s" % text[key]
    print
要看起来像此文件的打印输出,请执行以下操作:

dicts = [
    { "Annot1": 1, "NAME": "name", "TEXT": "text" },
    { "Annot2": 2, "NAME": "name", "TEXT": "text" },
    { "Annot3": 3, "NAME": "name", "TEXT": "text" },
    { "Annot4": 4, "NAME": "name", "TEXT": "text" }
]
print "\n \n".join(str(i)+" "+str(a) for i, a in enumerate(dicts, start=1))
name = {
    "Annot1": 'name',
    "Annot2": 'name',
    "Annot3": 'name',
    "Annot4": 'name'
}
text = {
    "Annot1": 'text',
    "Annot2": 'text',
    "Annot3": 'text',
    "Annot4": 'text'
}
for key in sorted(name):
    print key
    print "NAME: %s" % name[key]
    print "TEXT: %s" % text[key]
    print
。。。这就是我想到的

dicts = [
    { "Annotation_1": 1, "NAME": "name", "CONTENT": "text" },
    { "Annotation_2": 2, "NAME": "name", "CONTENT": "text" },
    { "Annotation_3": 3, "NAME": "name", "CONTENT": "text" },
    { "Annotation_4": 4, "NAME": "name", "CONTENT": "text" }
]

for d in dicts:
name = ''             # Or just name = 'Annot1' ?
for k in d.keys():
    if k.startswith('Annot'):
        name = k
        break
print d['Annotation'], name
print("NAME: %s" % d['NAME'])
print("CONTENT: %s" % d['CONTENT'])
print
这就是我打算如何从我的3D应用程序中输入稍后将写入文件的数据

dicts=[]

annotations={}
annotation[("Annotation_" + str(i))]
annotation['NAME'] = 'name'
annotation['CONTENT'] = 'content'
annotation['REF_URL'] = 'ref_url'
annotation['REF_INFO'] = 'ref_nfo' 

dicts.append(annotations)
这是根据我在这里得到的帮助而得出的结论

这是个好办法吗?(到目前为止,范围循环的初始值只是一个占位符)


据我所知,你只是想要:

for d in dicts:
    name = ''             # Or just name = 'Annot1' ?
    for k in d.keys():
        if k.startswith('Annot'):
            name = k
            break
    print(name)
    print("NAME: %s" % d['NAME'])
    print("TEXT: %s" % d['TEXT'])
    print()
这:

给出此输出:

Annot1
NAME: name
TEXT: text

Annot2
NAME: name
TEXT: text

Annot3
NAME: name
TEXT: text

Annot4
NAME: name
TEXT: text    

(1.)您在第一个代码部分编写了4次
“Annot1”:
。打字错误(2.)姓名(
“Annot1”
,…)必须从dict中提取还是可以生成(
“Annot”+str(i)
)?@Norman,是的,很抱歉,确实是打字错误。我现在已经改正了。是的,它们可以在以后生成附加到它们的计数,但可能不需要,因为我可以在值中使用计数。没问题。但如果这些都是打字错误,那你为什么要接受@Mike总是访问“Annot1”的答案呢?:-)我询问生成“Annoti”键的问题,因为像我这样从字典中提取它们对于大型dict来说可能会很慢。此外,我们的答案实际上没有一个像您的示例那样进行排序。这是一个很好的问题,关于我接受的答案:我显然是新来的,我试图接受两个答案,但显然不起作用。我确实也在玩弄你的代码,我会把它和我打算把这条格言放到列表中的方式一起贴在下面。你将如何从字典中提取它们?我之所以有“Annot1”等等。。在我的初始代码中,如果我没有,每次插入一个新的dict时,我似乎都会覆盖一个dict。。?