¿Cómo agregar clave, valor de par al diccionario?

¿Cómo agregar clave, valor de par al diccionario? ¿A continuación, he mencionado el siguiente formato?

{'1_somemessage': [[3L, 1L, u'AAA', 1689544L, datetime.datetime(2010, 9, 21, 22, 30), u'gffggf'], [3L, 1L, u'BBB', 1689544L, datetime.datetime(2010, 9, 21, 20, 30), u'ffgffgfg'], [3L, 1L, u'CCC', 1689544L, datetime.datetime(2010, 9, 21, 22, 30), u'hjhjhjhj'], [3L, 1L, u'DDD', 1689544L, datetime.datetime(2010, 9, 21, 21, 45), u'jhhjjh']], '2_somemessage': [[4L, 1L, u'AAA', 1689544L, datetime.datetime(2010, 9, 21, 22, 30), u'gffggf'], [4L, 1L, u'BBB', 1689544L, datetime.datetime(2010, 9, 21, 20, 30), u'ffgffgfg'], [4L, 1L, u'CCC', 1689544L, datetime.datetime(2010, 9, 21, 22, 30), u'hjhjhjhj'], [4L, 1L, u'DDD', 1689544L, datetime.datetime(2010, 9, 21, 21, 45), u'jhhjjh']]} 

Añadir una clave, valor de par al diccionario

 aDict = {} aDict[key] = value 

¿Qué quieres decir con adición dinámica?

Para una referencia rápida, todos los métodos siguientes agregarán una nueva clave ‘a’ si aún no existe o actualizarán el par de valor de clave existente con el nuevo valor ofrecido:

 data['a']=1 data.update({'a':1}) data.update(dict(a=1)) data.update(a=1) 

También puede mezclarlos, por ejemplo, si la clave ‘c’ está en los datos pero ‘d’ no, el siguiente método actualizará ‘c’ y agregará ‘d’

 data.update({'c':3,'d':4}) 

Llegué aquí buscando una manera de agregar un par de clave / valor como un grupo; en mi caso, fue el resultado de una llamada de función, por lo que agregar el par usando el dictionary[key] = value requerirá que sepa el Nombre de la (s) clave (s).

En este caso, puede usar el método de actualización: dictionary.update(function_that_returns_a_dict(*args, **kwargs)))

Tenga cuidado, si el dictionary ya contiene una de las claves, el valor original se sobrescribirá.

No estoy seguro de lo que quieres decir con “dynamic”. Si se refiere a agregar elementos a un diccionario en tiempo de ejecución, es tan fácil como dictionary[key] = value .

Si desea crear un diccionario con clave, valor para comenzar (en tiempo de comstackción) luego use (¡sorpresa!)

 dictionary[key] = value 

Si desea agregar un nuevo registro en el formulario

 newRecord = [4L, 1L, u'DDD', 1689544L, datetime.datetime(2010, 9, 21, 21, 45), u'jhhjjh'] 

a messageName donde messageName en la forma X_somemessage puede, pero no tiene que estar en su diccionario, entonces hágalo de esta manera:

 myDict.setdefault(messageName, []).append(newRecord) 

De esta manera, se agregará a un messageName existente o se messageName una nueva lista para un nuevo messageName .

Puede ser algún tiempo esto también será útil

 import collections #Write you select statement here and other things to fetch the data. if rows: JArray = [] for row in rows: JArray2 = collections.OrderedDict() JArray2["id"]= str(row['id']) JArray2["Name"]= row['catagoryname'] JArray.append(JArray2) return json.dumps(JArray) 

Ejemplo de salida:

 [ { "id": 14 "Name": "someName1" }, { "id": 15 "Name": "someName2" } ] 

Para insertar / agregar a un diccionario

 {"0": {"travelkey":"value", "travelkey2":"value"},"1":{"travelkey":"value","travelkey2":"value"}} travel_dict={} #initialize dicitionary travel_key=0 #initialize counter if travel_key not in travel_dict: #for avoiding keyerror 0 travel_dict[travel_key] = {} travel_temp={val['key']:'no flexible'} travel_dict[travel_key].update(travel_temp) # Updates if val['key'] exists, else adds val['key'] travel_key=travel_key+1