首页 > 解决方案 > 如何获取字符串“str”并理解它是数据类型:str

问题描述

我有一个 Yaml 文件,我在其中表示 CSV 的列和数据类型。我将使用它来读取数据框。该文件的格式为:

columns:
    company: str
    country: str
    address: str

当我阅读 yaml 文件时,我会得到:

{
    "columns": {
        { "company": "str"},
        { "country": "str"},
        { "address": "str"}
    }
}

但我需要它:

    "columns": {
        { "company": str},
        { "country": str},
        { "address": str}
    }
}

在这一点上,我的技巧是使用转换为类型的查找表。

{ 
    "int": int, 
    "str": str
}

标签: pythonyaml

解决方案


您可以import builtins获取类型作为此模块的属性:

import builtins

config['columns'] = {k: getattr(builtins, v) for k, v in config['columns'].items()}

推荐阅读