如何扫描json文件中的某个字符串?用Python

时间:2018-05-03 18:54:52

标签: python json

我正在使用带有以下代码的json libary:

config = json.load(open("config/config.json"))

加载我的json文件。但是,我无法找到如何扫描此文件的特定字符串。此文件中的代码是:

[
    {
        "name": "SID",
        "path": "/",
        "domain": test.com
    }
]

我正在尝试制作if语句,如果test.com是设置域,它会做一件事,但如果不是,它会做另一件事。感谢帮助

1 个答案:

答案 0 :(得分:1)

根据config json文件中是否有多个项目,我会做类似以下的事情(一般):

<load config>

for item in config:
    if item['domain'] == 'test.com':
        <do something>
    else:
        <do something else>

如果你知道配置中只有一个项目,那么你可以选择评论中列出的选项,并测试:

if config[0]['domain'] == 'test.com': <...>

代替。

请注意,此简单示例仅在您的JSON输入是在您的控制下创建时才有效 - 例如由你的应用程序的另一个模块等编写。换句话说,如果item ['domain']是(比如说)'TEST.com',它将会失败 - 所以你可能需要在测试前对输入进行一些清理。

Python REPL中的快速示例:

>>> li
[{'domain': 'test.com'}, {'domain': 'test1.com'}]
>>> for item in li:
...     if item['domain'] == 'test.com':
...         print('test.com')
...     else:
...         print('other')
...
test.com
other