python - 如何搜索 yaml 文件中的特定字符串和内容

标签 python python-2.7 yaml

下面是我的 yaml 文件

    filename:
      #Name of the JMX files which needs to be executed
      - URLLogin.txt
      - URLupload.txt
      - XlsxFileUpload.txt

    URLLogin:
      - this is to test the script

    XlsxFileUpload:
      - this is to test the current script

我将把文件名存储在一个数组中。并调用一个方法来循环获取文件描述。如果文件名存在描述,则应返回 1,否则应返回零

下面是我用于搜索描述的代码。

#this method is to search a particular string in yaml
def searchStringInYaml(filename,string):
    with open(filename, 'r') as stream:
        content = yaml.load(stream)
        if string in content:
            print string
            return 1
        else:
            return 0
    stream.close()

最佳答案

yaml.load(stream) 返回一个字典,使用 content.items() 迭代并检查值

例如:

import yaml
with open(filename, 'r') as stream:
    content = yaml.load(stream)
    for k,v in content.items():
        if "URLLogin.txt" in v:
            print k, v

输出:

filename ['URLLogin.txt', 'URLupload.txt', 'XlsxFileUpload.txt']

关于python - 如何搜索 yaml 文件中的特定字符串和内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51021929/

相关文章:

javascript - 无法使用 Selenium 单击按钮

python - 使用 lxml 生成器进行非递归查找

yaml - 是否有任何简化的 YAML 格式变得普遍?

yaml - 普罗米修斯 yaml 文件 : did not find expected key

c++ - 如何在 opencv 中访问 yml 文件的元素?

python - 评估 numpy 多项式返回错误的值

python - Numpy:检查数组中的某个位是否设置为 1 或 0?

python - 使用 Mechanize 查找表单输入字段,其中字段的标签包含字符串列表中的字符串?

python - 在一个字符串中查找多个正则表达式

python - PyCharm 找不到已安装的包 : keras