【问题标题】:python code output problem in list and dictionary列表和字典中的python代码输出问题
【发布时间】:2022-07-05 15:57:00
【问题描述】:

我已经写了这段代码-

    travel_log = [
    {
      "country": "France",
      "visits": 12,
      "cities": ["Paris", "Lille", "Dijon"]
    },
    {
      "country": "Germany",
      "visits": 5,
      "cities": ["Berlin", "Hamburg", "Stuttgart"]
    },
    ]
    def add_new_country(c,v,citi):
      travel_log.append(f'"country":{c},"visits": {v},"cities": {citi}')

    add_new_country("Russia", 2, ["Moscow", "Saint Petersburg"])
    print(travel_log)

为什么我在列表的最后一个元素中得到 \。

【问题讨论】:

    标签: python


    【解决方案1】:

    您将 f string 附加到您的字典列表中,这不是您对该列表的其他值具有的适当格式。您需要附加一个 Python dict 元素以避免出现\ 特殊字符等字符串表示形式的问题:

    travel_log = [
    {
      "country": "France",
      "visits": 12,
      "cities": ["Paris", "Lille", "Dijon"]
    },
    {
      "country": "Germany",
      "visits": 5,
      "cities": ["Berlin", "Hamburg", "Stuttgart"]
    },
    ]
    def add_new_country(c,v,citi):
      travel_log.append({"country":c,"visits":v,"cities": citi})
    
    add_new_country("Russia", 2, ["Moscow", "Saint Petersburg"])
    print(travel_log)
    

    输出:

    [{'country': 'France', 'visits': 12, 'cities': ['Paris', 'Lille', 'Dijon']}, {'country': 'Germany', 'visits': 5, 'cities': ['Berlin', 'Hamburg', 'Stuttgart']}, {'country': 'Russia', 'visits': 2, 'cities': ['Moscow', 'Saint Petersburg']}]
    

    【讨论】:

      【解决方案2】:

      似乎您将数组转换为对象。 ["Moscow" ...] -> "cities": {"String rep of array"}

      然后数组被转换,因此在数组元素中获取“String chars'”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-14
        • 2014-06-10
        • 2016-06-09
        • 2021-05-03
        相关资源
        最近更新 更多