重複の可能性:
json.loads を使用するときの u は何ですか?
json_encode を介して PHP でいくつかの文字列データを json にエンコードし、それを同じサーバー上の私の python スクリプトに渡そうとしています:
このデータには引用符が含まれ、URL の文字列でいっぱいの埋め込み配列が含まれます。
$data =array("test.com", array("http://google.com", "http://cnn.com"), "ASDASDASD");
$jsonified = json_encode($data);
shell_exec("python /path_to_script/script.py '".$jsonified."'");
これにより、最初の引数としてデータを使用してスクリプトが実行されることが期待されます。
現在、私はそれが適切にロードできることを確認するだけで、ちょっと転がっています:
import json
import sys
encoded = sys.argv[1]
print "ENCODED: ", encoded
decoded = json.loads(encoded)
print "DECODED: ", decoded
そして私はそれをこのように呼んでいます:
~$ python json-test.py '["test.com", ["http://www.google.com", "http://cnn.com"], "ASDASDASDASD"]'
ENCODED: ["test.com",["http://www.google.com", "http://cnn.com"], "ASDASDASDASD"]
DECODED: [u'test.com', [u'http://www.google.com', u'http://cnn.com'], u'ASDASDASDASD']
「u」はどうしたの?また、これがどういうわけかスムーズにうまくいくことを望んでいるのは正しいですか?