1차원 리스트를 json형태로 변경하고 싶습니다.
조회수 7785회
a.py
ddd=['norm9_ab1', 'dataset-hdf', 'audio', 'csvfile', 'saveHDF', 'backend_test', 'keras-adversarial', 'pathconnect']
filelist=[]
i=1
while i < len(ddd):
filelist.append('\"'+str(i)+'\":'+'\"'+ddd[i]+'\"')
i=i+1
print(filelist)
제가 ddd라는 1차원 배열을 json 형태로 만드려고 하는데요.. 완전 수동으로 바꾸는 중인데, 혹시 간단히 바꿔주는 라이브러리가 있을까요?? 찾아봤는데.. 검색능력이 부족한건지.. 잘 안나오네요..
결과
['"1":"dataset-hdf"', '"2":"audio"', '"3":"csvfile"', '"4":"saveHDF"', '"5":"backend_test"', '"6":"keras-adversarial"', '"7":"pathconnect"']
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
파이썬 기본 모듈중에 json 모듈이 제공됩니다.
그런데 원하는 결과는 key:value 형태군요?
아래 예제를 참고하세요.
import json ddd = ['norm9_ab1', 'dataset-hdf', 'audio', 'csvfile', 'saveHDF', 'backend_test', 'keras-adversarial', 'pathconnect'] M = dict(zip(range(1, len(ddd) + 1), ddd)) json.dumps(M) '{"1": "norm9_ab1", "2": "dataset-hdf", "3": "audio", "4": "csvfile", "5": "saveHDF", "6": "backend_test", "7": "keras-adversarial", "8": "pathconnect"}'
- 네, key:value 형태로 받고 싶었습니다. 답변 감사합니다ㅎ 알 수 없는 사용자 2018.11.22 09:05
- enumerate 내장 함수도 있네요, M = dict(list(enumerate(ddd, start=1))) 알 수 없는 사용자 2018.12.3 09:41
-
GO 로 해보기
package main import ( "encoding/json" "fmt" "strconv" ) func main() { ddd := []string{"norm9_ab1", "dataset-hdf", "audio", "csvfile", "saveHDF", "backend_test", "keras-adversarial", "pathconnect"} M := make(map[string]string) for k, v := range ddd { M[strconv.Itoa(k+1)] = v } jsonStr, _ := json.Marshal(M) fmt.Println(string(jsonStr)) } {"1":"norm9_ab1","2":"dataset-hdf","3":"audio","4":"csvfile","5":"saveHDF","6":"backend_test","7":"keras-adversarial","8":"pathconnect"}
댓글 입력