我有一個python字典和一些字典中的一些值。我試圖用結尾處的值在結構中生成鍵的點分隔字符串。在下面的例子中,我想要FIELD0 1和NAME。我可以創建一個for循環來處理數據或遞歸函數。我不知道是否有某種預編譯方法可以摺疊多級字典來分隔字符串?Python多級字典到字符串
我正在嘗試以下,但你知道它只會附加子字典。
'.'.join('%s %s\n' % i for i in a.items())
{'BOGUS1': 'BOGUS_VAL1',
'BOGUS2': 'BOGUS_VAL1',
'FIELD0': {'F0_VAL1': 1, 'F0_VAL2': 2},
'FIELD1': {'F1_VAL1': 80, 'F1_VAL2': 67, 'F1_VAL3': 100},
'FOOBAR1': 'FB_VAL1',
'NAME': 'VALUE'}
BOGUS2.BOGUS_VAL1
.NAME.VALUE
.BOGUS1.BOGUS_VAL1
.FIELD0.{'F0_VAL1': 1, 'F0_VAL2': 2}
.FIELD1.{'F1_VAL2': 67, 'F1_VAL3': 100, 'F1_VAL1': 80}
.FOOBAR1.FB_VAL1
# Wanted results
FIELD0.F0_VAL1 1
FIELD0.F0_VAL2 2
FIELD1.F1_VAL1 80
FIELD1.F2_VAL1 67
FIELD1.F3_VAL1 100
NAME VALUE
爲什麼BOGUS1,BOGUS2和FOOBAR1應該在所需的輸出中跳過? – kylewm 2015-02-05 16:29:19
這些字段存在於JSON中,我不需要在這個字符串上下文中使用它們,因爲它們是靜態值,其他字符將會不同,名稱將用於標識值集。 – LF4 2015-02-05 16:59:03