首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >循环通过JSON (Foursquare API)

循环通过JSON (Foursquare API)
EN

Stack Overflow用户
提问于 2020-04-23 21:54:40
回答 1查看 34关注 0票数 1

我正在尝试从一个JSON文件中提取数据,下面是其中的一个片段。我想遍历它以获取所有的categories>name,并获得“便利店”的结果,如本例所示。

代码语言:javascript
复制
{
  'meta': {
    'code': 200,
    'requestId': '5ea184baedbcad001b7a3f8c'
  },
  'response': {
    'venues': [
      {
        'id': '4d03b2f6dc45a093b4b0e5c6',
        'name': 'Ozbesa Market',
        'location': {
          'address': 'Acibadem basogretmen sokak',
          'lat': 41.00622726261631,
          'lng': 29.051791450375678,
          'labeledLatLngs': [
            {
              'label': 'display',
              'lat': 41.00622726261631,
              'lng': 29.051791450375678
            }
          ],
          'distance': 92,
          'cc': 'TR',
          'country': 'Türkiye',
          'formattedAddress': [
            'Acibadem basogretmen sokak',
            'Türkiye'
          ]
        },
        'categories': [
          {
            'id': '4d954b0ea243a5684a65b473',
            'name': 'Convenience Store',
            'pluralName': 'Convenience Stores',
            'shortName': 'Convenience Store',
            'icon': {
              'prefix': 'https://ss3.4sqi.net/img/categories_v2/shops/conveniencestore_',
              'suffix': '.png'
            },
            'primary': True
          }
        ],
        'referralId': 'v-1587643627',
        'hasPerk': False
      },

这是我的for循环,请帮我修复它。它只返回便利店,但也有其他如‘购物中心’,‘住宅楼’等。

代码语言:javascript
复制
for ven in json_data:
        for cat in ven:
                print(json_data['response']['venues'][0]['categories'][0]['name'])

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2020-04-23 21:59:27

为了举例,我省略了一些每个地点的数据,并添加了一些类别……但正如我在注释中提到的,您没有使用循环遍历的值。

代码语言:javascript
复制
json_data = {
    "meta": {"code": 200, "requestId": "5ea184baedbcad001b7a3f8c"},
    "response": {
        "venues": [
            {
                "name": "Ozbesa Market",
                "categories": [
                    {"name": "Convenience Store", "primary": True},
                    {"name": "Imaginary Category", "primary": False},
                ],
            },
            {
                "name": "Another Location",
                "categories": [
                    {"name": "Bus Station", "primary": True},
                    {"name": "Fun Fair", "primary": False},
                ],
            },
        ]
    },
}

for venue in json_data["response"]["venues"]:
    print(venue["name"])
    for cat in venue["categories"]:
        print("..", cat["name"])

将输出例如

代码语言:javascript
复制
Ozbesa Market
.. Convenience Store
.. Imaginary Category
Another Location
.. Bus Station
.. Fun Fair
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61388962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档