[英]unable to import "numpy" or pandas using python3 or python commandline, but able to import the packages in jupyter notebook
[英]Not able to import json from commandline for Python
我目前正在尝试导入通过命令行参数被Python接受的json输入,并且我正在尝试将不同的值保存到JSON到列表中。 我在下面给出的代码中遇到了问题,并附加了代码和下面给出的错误。 任何帮助,不胜感激。
import sys
import json
def lookup1 ():
jsonData = json.loads(sys.argv[1])
print jsonData
jsonList = [jsonData['proxy'],jsonData['OS']]
print jsonList
lookup1()
错误如下:
$ python dynamicMapper.py '{'proxy':1,'OS':2}'
Traceback (most recent call last):
File "dynamicMapper.py", line 9, in <module>
lookup1()
File "dynamicMapper.py", line 4, in lookup1
jsonData = json.loads(sys.argv[1])
File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
obj, end = self.scan_once(s, idx)
ValueError: Expecting property name: line 1 column 2 (char 1)
我给出的逗号参数是python dynamicMapper.py '{'proxy':1,'OS':2}'
我无法找出导致此错误的原因以及我的方法是否正确。
该脚本运行良好,您只需要以正确的方式调用它即可:
python dynamicMapper.py '{"proxy":1,"OS":2}'
{u'OS': 2, u'proxy': 1}
[1, 2]
在JSON中,字符串用双引号而不是单引号引起来。 您还需要引用传递给脚本的字符串,以便外壳程序将其理解为单个参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.