字典列表:以python 2.7打印可读输出
我正试图从一个3D软件包中输出大量信息,并在数据同步到在线服务器之前,努力找到一种好方法,将数据格式化为可读的格式 关于如何获得以下内容的打印输出,我希望得到任何建议:字典列表:以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"
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。。?