2016-08-11 63 views
-1

我对python很陌生,我正在尝试使用请求库来执行基本的api请求,但是在返回的正文中读取列表时遇到了一些问题。从列表中读取

我的回应的身体看起来是这样的:

{ 
    "files": [{ 
     "url": "http://someurl.json", 
     "lastModified": 1470924180000 
    }] 
} 

我的代码,我得到包含在“文件”中的数据,但我无法弄清楚如何获得“URL” conatained数据。
我的代码:

response = requests.get(url) 
data = response.json() 
print(data["files"]) 

这将返回:

[{'url': 'http://myurl.json', 'lastModified': 1470928985000}] 

我怎么能存储在变量URL和上次更改时间?

回答

1

只需使用:

url = data['files'][0]['url'] 
last_modified = data['files'][0]['lastModified'] 

你的数据是包含字典为"files"关键的list的字典。要获得files的第一个条目,您必须将该列表编入data['files'][0]

之后data['files'][0]是一个字典,您可以根据需要再次使用密钥名称进行访问,在此情况下为'url''lastModified'

+0

谢谢! 这解释了为什么当我尝试使用数据['文件'] ['url'] – user45706

+0

@ user45706时,它不起作用正确地注意''文件'是如何构造的,它有一个方括号'['列表,然后是一个花括号'{'表示字典。由于字典在列表中,因此您必须对列表进行索引才能得到它。 –