Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在RoR中获取无效的json_Python_Ruby On Rails_Json - Fatal编程技术网

Python 在RoR中获取无效的json

Python 在RoR中获取无效的json,python,ruby-on-rails,json,Python,Ruby On Rails,Json,我有一个数组sku=[“MAPNQ20673”]。在使用sku.to_json将其转换为json时,我得到了“[\“MAPNQ20673\”]。这是一个无效的json。我需要将这个数组传递给python脚本 system "python2 /home/nish/stuff/repos/Untitled/voylla_staging_changes/app/models/ReviseItem.py #{sku.to_json} #{qtys.to_json}" 然后,我使用json.load(s

我有一个数组sku=
[“MAPNQ20673”]
。在使用sku.to_json将其转换为json时,我得到了
“[\“MAPNQ20673\”]
。这是一个无效的json。我需要将这个数组传递给python脚本

system "python2 /home/nish/stuff/repos/Untitled/voylla_staging_changes/app/models/ReviseItem.py #{sku.to_json} #{qtys.to_json}"
然后,我使用
json.load(sys.argv[1])
进行解码。但是由于json是无效的,所以在python脚本中解码json时会出现以下错误:

raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
如何将数组转换为有效的json


EDIT:当我从一个独立的ruby程序调用python脚本时,它可以很好地工作。但是,当我试图从RoR应用程序的控制器上执行相同的操作时,它失败了

这对我使用Python 2.7非常有效:

>>> from json import dumps, loads
>>> sku = ["MAPNQ20673"]
>>> s = dumps(sku)
>>> x = loads(s)
>>> x == sku
True
>>> x
[u'MAPNQ20673']

如何将其转换为json?您的实际代码在哪里?您可能应该阅读一些关于python和json对象的内容。这段代码毫无意义(或者,看看James Mills关于如何做的回答),你是如何从Ruby调用Python脚本的?@yuvi:我发布了一个编辑,它在独立模式下使用时可以正常工作,但在RoR应用程序中不能。我在琢磨为什么会发生这种情况是的,当我从一个独立的ruby程序调用它时,它对我来说很好。但是当我尝试从RoR应用程序中执行同样的操作时,我得到了一个无效的json。然后我建议您找出编码/解码出错的地方。您将使用Python Ruby on Rails?