将字符串转换为IO [str]数据类型

问题描述 投票:0回答:1

我有以下问题。

出于单元测试的目的,我以这种方式生成资源文件的路径:

file_name = os.path.join(
        os.path.dirname(os.path.abspath(__file__)), 'resources/resource.json'
    )

file_name var的返回数据类型是str

我正在通过此单元测试测试的方法,然后从IO[str]接受typing library数据类型。

单元测试正在工作,但是当我在代码上运行typing验证时,出现以下错误消息:

mypy
python io typing mypy
1个回答
0
投票

mypy错误是正确的。您传递tests/test_get_requirements.py:73: error: Argument 1 to "JiraRequirements" has incompatible type "str"; expected "IO[str]" Line **73** is basically the instantiation of new object of *JiraRequirements class* MockedObject = JiraRequirements(file_name) 文件名,其中str需要打开的文件对象。来自typing文档:

© www.soinside.com 2019 - 2024. All rights reserved.