Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.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 从json获取元素_Python_Json_Parsing_Constructor - Fatal编程技术网

Python 从json获取元素

Python 从json获取元素,python,json,parsing,constructor,Python,Json,Parsing,Constructor,我是python新手,我正在尝试实现一个小的bellman-ford算法。我从json中的不同货币获得了一些利率,如下所示: {"USD_JPY": "88.1911719", "USD_USD": "1.0000000", "JPY_EUR": "0.0086441", "BTC_USD": "122.5311820", "JPY_BTC": "0.0000923", "USD_EUR": "0.6695743", "EUR_USD": "1.2624079", "EUR_JPY": "129

我是python新手,我正在尝试实现一个小的bellman-ford算法。我从json中的不同货币获得了一些利率,如下所示:

{"USD_JPY": "88.1911719", "USD_USD": "1.0000000", "JPY_EUR": "0.0086441", "BTC_USD": "122.5311820", "JPY_BTC": "0.0000923", "USD_EUR": "0.6695743", "EUR_USD": "1.2624079", "EUR_JPY": "129.3438373", "JPY_USD": "0.0111120", "BTC_BTC": "1.0000000", "EUR_BTC": "0.0110526", "BTC_JPY": "12543.0532689", "JPY_JPY": "1.0000000", "BTC_EUR": "90.3821109", "EUR_EUR": "1.0000000", "USD_BTC": "0.0071458"}
我试图以这种方式实例化我的对象,但它似乎不能正常工作,即使它可以工作,我认为它不是真正有效的(如果货币顺序发生变化,我很抱歉)


如果你们能告诉我它是如何工作的,以及如何高效地读取我的JSON,我会很高兴。

您不需要使用索引访问JSON对象。钥匙就是你所需要的。另外,您希望访问
res
,它是您加载的对象,而不是
json
,模块的名称

self.eurtusd=res['EUR\u USD']

除此之外:


self.eurtusd=json[6]['EUR_USD']
您不需要使用索引访问json对象。钥匙就是你所需要的。另外,您希望访问
res
,它是您加载的对象,而不是
json
,模块的名称

self.eurtusd=res['EUR\u USD']

除此之外:


self.eurtusd=json[6]['EUR_USD']
您不需要使用索引访问json对象。钥匙就是你所需要的。另外,您希望访问
res
,它是您加载的对象,而不是
json
,模块的名称

self.eurtusd=res['EUR\u USD']

除此之外:


self.eurtusd=json[6]['EUR_USD']
您不需要使用索引访问json对象。钥匙就是你所需要的。另外,您希望访问
res
,它是您加载的对象,而不是
json
,模块的名称

self.eurtusd=res['EUR\u USD']

除此之外:

self.eurtusd=json[6]['EUR_USD']

如何使用

然后您会得到如下数据:

>>> currency.USD_JPY
'88.1911719'
>>>> currency.USD_USD
'1.0000000'
因此,在您的示例中,它将是:

def __init__ (self, data):       
    Currency = namedtuple('Currency', data.keys())
    self.currency = Currency(**data)
使用如何

然后您会得到如下数据:

>>> currency.USD_JPY
'88.1911719'
>>>> currency.USD_USD
'1.0000000'
因此,在您的示例中,它将是:

def __init__ (self, data):       
    Currency = namedtuple('Currency', data.keys())
    self.currency = Currency(**data)
使用如何

然后您会得到如下数据:

>>> currency.USD_JPY
'88.1911719'
>>>> currency.USD_USD
'1.0000000'
因此,在您的示例中,它将是:

def __init__ (self, data):       
    Currency = namedtuple('Currency', data.keys())
    self.currency = Currency(**data)
使用如何

然后您会得到如下数据:

>>> currency.USD_JPY
'88.1911719'
>>>> currency.USD_USD
'1.0000000'
因此,在您的示例中,它将是:

def __init__ (self, data):       
    Currency = namedtuple('Currency', data.keys())
    self.currency = Currency(**data)

我得到以下错误:self.eurtusd=json['EUR_USD']TypeError:'module'对象没有属性'getitem'Oh尝试使用
self.eurtusd=res['EUR_USD']
我得到以下错误:self.eurtusd=json['EUR_USD']TypeError:'module'对象没有属性'getitem'Oh尝试使用
self.eurtusd=res['EUR_USD']
我得到以下错误:self.eurtusd=json['EUR_USD']TypeError:'module'对象没有属性'getitem'哦,尝试使用
self.eurtusd=res['EUR_USD']
我得到以下错误:self.eurtusd=json['EUR_USD']TypeError:'module'对象没有属性'getitem'哦,尝试使用
self.eurtusd=res['EUR_USD']