在Python中连接和格式化对象数组

2024-06-28 10:54:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在python中将值和对象数组连接并格式化为字符串。有什么办法让我这么做吗?你知道吗

url =  "https://google.com",
search = "thai food",
search_res = [
        {
            "restaurant": "Siam Palace",
            "rating": "4.5"
        },
        {
            "restaurant": "Bangkok Palace",
            "rating": "3.5"
        }
]
url =  "https://google.com",
search = "indian food",
search_res = [
        {
            "restaurant": "Taj Palace",
            "rating": "2.5"
        },
        {
            "restaurant": "Chennai Express",
            "rating": "5.0"
        }
]
url =  "https://bing.com",
search = "thai food",
search_res = [
        {
            "restaurant": "Siam Palace",
            "rating": "1.5"
        },
        {
            "restaurant": "Bangkok Palace",
            "rating": "4.5"
        }
]
url =  "https://bing.com",
search = "indian food",
search_res = [
        {
            "restaurant": "Taj Palace",
            "rating": "4.5"
        },
        {
            "restaurant": "Chennai Express",
            "rating": "3.0"
        }
]

我希望能够将值格式化为:

如果我能让它看起来像:

            all_data = [{
              url = "https://google.com",
              results = [{
                search = "thai food",
                search_res = [{
                  "restaurant": "Siam Palace",
                  "rating": "4.5"
                }, {
                  "restaurant": "Bangkok Palace",
                  "rating": "3.5"
                }]
              }, {
                search = "Indian food",
                search_res = [{
                  "restaurant": "Taj Palace",
                  "rating": "2.5"
                }, {
                  "restaurant": "CHennai Express",
                  "rating": "5.0"
                }]
              }]
            }, {
              url = "https://bing.com",
              results = [{
                search = "thai food",
                search_res = [{
                  "restaurant": "Siam Palace",
                  "rating": "1.5"
                }, {
                  "restaurant": "Bangkok Palace",
                  "rating": "4.5"
                }]
              }, {
                search = "Indian food",
                search_res = [{
                  "restaurant": "Taj Palace",
                  "rating": "4.5"
                }, {
                  "restaurant": "CHennai Express",
                  "rating": "3.0"
                }]
              }]
            }, ]

我这样做是为了加入价值观:

        data = {} 
        data['url'] = 'https://google.com'
        data['search'] = 'thai food'
        data['results'] = results

        import json
        print(json.dumps(data, indent=4)    

我的结果是把这三个值连在一起,然后对每个值重复。我有没有办法把它格式化成上面提到的格式?你知道吗


Tags: httpscomurlsearchdatafoodgoogleres
1条回答
网友
1楼 · 发布于 2024-06-28 10:54:01

你可以列一个清单,然后把每个条目都加上。你知道吗

    all_data = []

    data_google = {
      'url' = 'https://google.com',
      'results' = []
    }
    data_thai = {}
    data_thai['search'] = 'thai food'
    data_thai['results'] = results
    data_google.append(data_thai)

    data_indian = {}
    data_indian['search'] = 'indian food'
    data_indian['results'] = results
    data_google.append(data_indian)

    all_data.append(data_google)

    ...

    import json
    print(json.dumps(all_data , indent=4) 

相关问题 更多 >