Python多个json配置文件和线程?

2024-03-28 23:10:34 发布

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

所以基本上我今天的计划是从json创建多个概要文件,并使它们作为线程运行。问题是,我从来没有做过线程,但我读过关于它,它并不觉得那么复杂,但作为第一次尝试,也是一个建议,这可能是真正有用的,我使这样的事情成为可能。你知道吗

不过,我的想法是让json文件看起来像这样:

[{
    "Name": "Baller",
    "Lastname": "cavs",
    "Email": "baller@gmail.com"
},
{
    "Name": "Lakers",
    "Lastname": "Nation",
    "Email": "baller@gmail.com"
}

]

我希望现在Json验证了这一点。你知道吗

基本上,json文件中的每一个概要文件都应该运行到一个线程中,这个线程将逻辑放入我的脚本中,但现在我只有

  {
        "Name": "Baller",
        "Lastname": "cavs",
        "Email": "baller@gmail.com"
    }

它只允许一次,如果我添加[]来执行多个任务,我会得到一个错误,因为它不知道[]在做什么。。。 但是我需要怎么做/怎么想才能让它在多个json任务上运行,并让它们运行到一个线程中(我认为线程是最好的选择?)。我想让它做的是,使每个配置文件成为一个线程。在我的脚本/代码中执行相同的逻辑代码,然后是。。结束时,它几乎完成。你知道吗

请随时发表评论。我也会编辑这个时候,我得到进一步!你知道吗


编辑:

  {
    "Profiles": {
        "profile1": {
            "Name": "Baller",
            "Lastname": "cavs",
            "Email": "baller@gmail.com"
        },
        "profile2": {
            "Name": "Lakers",
            "Lastname": "Nation",
            "Email": "baller@gmail.com"
        }
    }
}

我已将Json文件更改为该文件,我一直尝试执行的代码是:

with open('profile.json', 'r', encoding='UTF-8') as json_data:
    config = json.load(json_data)

Name = config["Name"]
print(Name)

但是我在说KeyError: 'Name'时出错了

我猜它根本找不到它?。。所以我来了。。我想我们需要做的也许是一个循环通过配置文件?但是我在想,如果我做一个循环,那么它只会一个接一个地运行,而不是同时运行所有的配置文件?你知道吗


Tags: 文件代码namecomjsonemail配置文件线程
1条回答
网友
1楼 · 发布于 2024-03-28 23:10:34

您得到KeyError,因为名称不在字典中。例如,尝试使用config['Profiles']['profile1']['Name']获取配置文件。如果您对列表中的元素进行迭代,那么使用列表的第一个解决方案也应该有效。你知道吗

假设您的JSON看起来像:

[ {profile1}, {profile2}, etc ]

您的代码是:

with open('profile.json', 'r', encoding='UTF-8') as json_data:
    config = json.load(json_data)

for profile in config:
    Name = profile["Name"]
    print(Name)

例如:

with open('profile.json', 'r', encoding='UTF-8') as json_data:
    config = json.load(json_data)

for profile_cfg in config['Profiles'].values():
    Name = profile_cfg["Name"]
    print(Name)

相关问题 更多 >