의 목록에서 JSON 파일을 직렬화 : 나는 또한 키의 목록을그래서 내가 요소 목록이 목록
elements = [room1, room2, room3]
를/값은 각 방에가 가지고있는 속성 :
keys = ["level", "finish1", "finish2"]
values = [["ground", "paint1", "carpet1"],["ground", "paint1", "paint2"], ["second level", "paint1", "paint2"]]
이다가
{'room1': [{'level': 'ground', 'finish1': 'paint1', 'finish2': 'carpet1'}],'room2': [{'level': 'ground', 'finish1': 'paint1', 'finish2': 'paint2'}],'room3': [{'level': 'second level', 'finish1': 'paint1', 'finish2': 'paint2'}]}
내가 좌약을 나던 이상한 플랫폼입니다 : 방법은 다음과 같이 구조화 JSON 파일에이 두 개의리스트를 직렬화 오트 사전 그래서 나는 그들을 위해 클래스를 만들었 :
def json_list(keys,values):
lst = []
for pn, dn in zip(values, keys):
d = {}
d[dn]=pn
lst.append(d)
return json.dumps(lst)
하지만이 코드 desnt : 내가 나를 두 개의 병렬 목록에서 기본 JSON 코드를 만들 수있는 것입니다 코드의 peiece을 발견 한 후
class collection():
def __init__(self,name,key,value):
self.name = name
self.dict = {}
self.dict[key] = value
def __str__(self):
x = str(self.name) + " collection"
for key,value in self.dict.iteritems():
x = x + '\n'+ ' %s= %s ' % (key, value)
return x
내게 {room1 : [{... structure
어떤 아이디어라도 좋을 것입니다. 이 소프트웨어는 IronPython2.7을 기반으로합니다.
좋습니다. 나는 코멘트로부터 큰 피드백을 얻었다. 나는 내가 설명하지 못한 하나 이상의 변형을 가지고있다. 때로는 단일 요소 유형 (실, 열 등) 이상을 혼합하려고 시도 할 때 동일한 양의 속성을 갖지 못할 수도 있습니다. 예를 들어, 방은 (레벨, 마감 및 마감)을 가질 수 있지만 기둥은 두께와 재질 만 가질 수 있습니다. 나는 그것이 작동되도록 아래의 정의를 수정해야하는 방법
keys = [[thickness, material],[level,finish,finish]]
values = [[100,paint],[ground,paint,paint]]
elements = [column,room]
: 내가 보관하면 모든 키 병렬 목록에 조직/값은 아래의 정의를 수정하는 것이 가능하다? 다시 json 파일을 내보내려고합니다. 내가 파이썬도 사전없이 작동하는 방법을 모르는
* "사전을 지원하지 않습니다"*는 무엇을 의미합니까? 'collection' *은 사전을 사용하여 구현됩니다 *. – jonrsharpe
글쎄요, 함수 밖에서 사전을 만들면 오류가 발생합니다. 그래서 json_list 함수 안에서 d = {}를 사용할 수 있지만 그것의 외부에는 사용할 수 없습니다. – konrad
'd = dict()'를 밖에하면 어떻게됩니까? – L3viathan