사전의 목록을 반환하는 두 개의 함수가 있는데 json을 인코딩하려고합니다. 첫 번째 함수로 시도 할 때 작동하지만 지금은 작동합니다. 구문 오류가 ": expected"
인 두 번째 함수가 추가되었습니다. 나는 결국 각각이 dict의리스트를 출력하는 총 7 개의 함수를 덧붙일 것이다. 이것을 성취하는 더 좋은 방법이 있습니까?dict의 목록을 추가 할 때 파이썬 json 덤프 덤프
import dmidecode
import simplejson as json
def get_bios_specs():
BIOSdict = {}
BIOSlist = []
for v in dmidecode.bios().values():
if type(v) == dict and v['dmi_type'] == 0:
BIOSdict["Name"] = str((v['data']['Vendor']))
BIOSdict["Description"] = str((v['data']['Vendor']))
BIOSdict["BuildNumber"] = str((v['data']['Version']))
BIOSdict["SoftwareElementID"] = str((v['data']['BIOS Revision']))
BIOSdict["primaryBIOS"] = "True"
BIOSlist.append(BIOSdict)
return BIOSlist
def get_board_specs():
MOBOdict = {}
MOBOlist = []
for v in dmidecode.baseboard().values():
if type(v) == dict and v['dmi_type'] == 2:
MOBOdict["Manufacturer"] = str(v['data']['Manufacturer'])
MOBOdict["Model"] = str(v['data']['Product Name'])
MOBOlist.append(MOBOdict)
return MOBOlist
def get_json_dumps():
jsonOBJ = json
#Syntax error is here, i can't use comma to continue adding more, nor + to append.
return jsonOBJ.dumps({'HardwareSpec':{'BIOS': get_bios_specs()},{'Motherboard': get_board_specs()}})
감사하지만이 나에게 JSON "의 형식을 제공합니다 -> HardwareSpec -> 0 - BIOS를 -> ..., "마더 보드 -> ..." "Json -> HardwareSpec -> BIOS - 0 -> ..., 마더 보드 - 0 -> ..." 감각 .. – Dayan
@ 대연 : 그렇습니다. 예를 들어 답을 편집했습니다. – voithos
감사합니다. 좋은 예입니다. 나는 2 번째를 좋아합니다! – Dayan