Ответ 1
Используйте json.dumps
для сброса str
>>> import json
>>> json.dumps({'a':'b'})
'{"a": "b"}'
json.dump
сбрасывает файл
Что мне не хватает? Я хочу сбросить словарь как строку json.
Я использую python 2.7
С помощью этого кода:
import json
fu = {'a':'b'}
output = json.dump(fu)
Я получаю следующую ошибку:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/gevent-1.0b2-py2.7-linux-x86_64.egg/gevent/greenlet.py", line 328, in run
result = self._run(*self.args, **self.kwargs)
File "/home/ubuntu/workspace/bitmagister-api/mab.py", line 117, in mabLoop
output = json.dump(fu)
TypeError: dump() takes at least 2 arguments (1 given)
<Greenlet at 0x7f4f3d6eec30: mabLoop> failed with TypeError
Используйте json.dumps
для сброса str
>>> import json
>>> json.dumps({'a':'b'})
'{"a": "b"}'
json.dump
сбрасывает файл
Я думаю, проблема json.dump. попробуйте
json.dumps(fu)
Вы можете использовать json.dumps
.
Пример:
import json
json.dumps({'zuckerberg':'tech','sachin':'cricket'})
Выводится:
'{"zuckerberg": "tech", "sachin": "cricket"}'
Если вы хотите отсортировать ключи, используйте sort_keys
в качестве второго аргумента для json.dumps
:
json.dumps({'zuckerberg':'tech','sachin':'cricket'},sort_keys=True)
Выходы:
'{"sachin": "cricket", "zuckerberg": "tech"}'
message={"message":"Done", "result":"1"}
message_json = simplejson.dumps(message)
payload = message_json
##or
message={"message":"Done", "result":"1"}
message_json=jsonify(message)