Не уверен, что то, что вы проходите, важно, но вы можете передать следующее и получить желаемый результат:
"{\"key1\":\"value1\", \"key2\":\"value2\"}"
или
'{"key1":"value1", "key2":"value2"}'
Вот код и вывод:
$cat json_convert.py
import json
import sys
dict_in = json.loads(sys.argv[1])
print (dict_in)
$ python json_convert.py '{"key1":"value1", "key2":"value2"}'
{'key1': 'value1', 'key2': 'value2'}
То, что вы передаете """{"key1":"value1", "key2":"value2"}"""
, переводится в "" + "{" + key1 + ":" + value1 + ", " + + key2 + ":" + value2 + "}" + ""
, если вы спрашиваете bash
, если вы вызывали функцию с этим в качестве аргумента из самого python
, вы бы получить желаемые результаты.
Так что действительно идет вниз к тому, из чего вы его вызываете.
Если вам все еще нравятся кавычки, пройдите """{"'"key1"'":"'"value1"'", "'"key2"'":"'"value2"'"}"""
, чтобы получить желаемый результат:)