python - 定义字符串时出现关键错误,python

标签 python string dictionary key

我收到错误“ key 错误:'name'”

谁能告诉我以下代码的问题是什么:

import random

def mongoCountry(countryNum, provinceNum):
    """generate some test data"""
    f = open("F:\\univData\\country-mongo.json", mode = 'w')
    text = ""
    for c_n in range(0, countryNum):
        for p_n in range(0, provinceNum):
            text += "{name:country{0},provinces:[{$ref : Province,$id :   province{1}}]}\n".format(c_n, p_n)
    f.write(text)
    f.close()

mongoCountry(2, 10)

我用谷歌搜索了它,所以我知道它是关于 dict() 对象的。但我在那里找不到任何这样的对象。

最佳答案

如果我正确理解您的程序,您正在尝试创建一个 JSON 对象。正如 iCodez 在他的回答中所说,Python 的 format 函数将整个字符串视为格式字符串(或模板字符串,如果您愿意)。要覆盖它,您可以像这样转义格式字符串

"{{name:country{0},provinces:[{{$ref : Province,$id : province{1}}}]}}\n".format(c_n, p_n)

如果 c_np_n 分别是 "Welcome""123",您将得到类似以下内容

{name:countryWelcome,provinces:[{$ref : Province,$id :   province123}]}

关于python - 定义字符串时出现关键错误,python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24566379/

相关文章:

python - 我如何将 Heroku 数据库转移到我的本地计算机?我有一个 Django 应用程序(不是 Rails)

python - 根据时间分割推文

java - Android 日期至今的天数

c - 它是 str_replace 中的错误吗?

ios - tableView 数据源的字典

python - 为什么这会返回生成器列表?

Python:为什么缺陷查找器模块在cmd窗口中不起作用?

java - 如何计算字符串中的对数

python - 询问字典中两个值中的一个

python - 如何在 Python 中处理一小部分数据?