import json from jsonpath_ng import parse # JSON 데이터 json_data = [ { "id": "ro4n", "x": 0, "y": 0, "type": "wait_second", "params": [ { "id": "6xf0", "x": 0, "y": 0, "type": "number", "params": ["1"], "statements": [], "movable": None, "deletable": 1, "emphasized": False, "readOnly": None, "copyable": True, "assemble": True, "extensions": [] }, None ], "statements": [], "movable": None, "deletable": 1, "emphasized": False, "readOnly": None, "copyable": True, "assemble": True, "extensions": [] }, { "id": "kkqk", "x": 0, "y": 0, "type": "wait_second", "params": [ { "id": "167c", "x": 0, "y": 0, "type": "number", "params": ["1"], "statements": [], "movable": None, "deletable": 1, "emphasized": False, "readOnly": None, "copyable": True, "assemble": True, "extensions": [] }, None ], "statements": [], "movable": None, "deletable": 1, "emphasized": False, "readOnly": None, "copyable": True, "assemble": True, "extensions": [] } ] # JSONPath 표현식 jsonpath_expr = parse("$[?(@.type=='wait_second')][0]") # 첫 번째 "wait_second" 요소 찾기 matches = [match.value for match in jsonpath_expr.find(json_data)] # 출력 if matches: print("첫 번째 wait_second 요소:", json.dumps(matches[0], indent=4, ensure_ascii=False)) else: print("❌ 해당 요소를 찾을 수 없습니다.")