2017-01-07 4 views
0

나는 작은 딜레마에 빠졌습니다. 파이썬의 버전 2.7 모듈 인 MySQLdb를 사용하여 테이블에서 목록을 가져온다. 코드는 간단하다 :Python을 사용하여 MySQL에서 JSON 형식으로 목록 가져 오기

(('00000000762c1d3c'), ('000000003ad192f2'), ('00000000ca91760d'), ('000000004c9898aa :

#!/usr/bin/python 
import json 
import MySQLdb 

db_host = "localhost" 
db_user = "xxx" 
db_passwd = "yyy" 
db_table = "table" 

try: 
     db = MySQLdb.connect(host=db_host, user=db_user, passwd=db_passwd, db=db_table) 
     cursor = db.cursor() 
     cursor.execute("""SELECT serial FROM devices WHERE registered_id IS NOT NULL AND registered_id <>''""") 
     devices = cursor.fetchall() 
     print devices 
except: 
     print "Something went wrong with the MySQL" 

이 인쇄하기로 나온다 그것은 아주 긴 때문에 '))

는 (나는 그것을 아래로 단축.)

을 나는 그것이 사장님을 보이도록이 JSON으로 올바르게 구문 분석 할 목록을 얻을 어떻게 E :

{"devices": ['00000000762c1d3c', '000000003ad192f2', '00000000ca91760d', '000000004c9898aa']} 

이 당신의 제안을 주셔서 감사합니다!

+1

참고 : 트리플 인용 문자열 '는 "" "" ""'여러 줄 문자열에만 필요하며, 다만 다른 불필요한 혼란을 추가합니다. – tadman

답변

1
data = {"devices": [item[0] for item in devices]} 
json_data = json.dumps(data) 
관련 문제