简体   繁体   English

为什么我不能从 Pydantic 导入 BaseModel?

[英]Why i can't import BaseModel from Pydantic?

enter code hereI try to import pydantic (1.8.1 ver.) library.在此处输入代码我尝试导入 pydantic (1.8.1 ver.) 库。

When i try import BaseModel from pydantic I get error.当我尝试从 pydantic 导入 BaseModel 时出现错误。 I try to import like this from pydantic import BaseModel我尝试from pydantic import BaseModel像这样导入

Output: Output:

ImportError: cannot import name 'BaseModel' from partially initialized module 'pydantic' (most likely due to a circular import) (D:\temp\main.py) ImportError:无法从部分初始化的模块“pydantic”导入名称“BaseModel”(很可能是由于循环导入)(D:\temp\main.py)

This is my code:这是我的代码:

from pydantic import BaseModel  
from datetime import datetime
from datetime import date
from typing import List, Dict

class CurrencyRequest(BaseModel):

    base: str = "EUR"
    symbols: List[str]
    start_at: date = None
    end_at: date = None

    def __str__(self):
        return """
        Dates range: {start} - {end}
        Base currency: {base}
        Different currencies: {curr}
        """.format(
            start=self.start_at.strftime("%Y-%m-%d") if self.start_at is not None else "...",
            end=self.end_at.strftime("%Y-%m-%d") if self.end_at is not None else "...",
            base=self.base,
            curr=self.symbols
        )

This is link to photo with error这是错误照片的链接

Thanks for all answers.感谢所有的答案。

Probably you have a package or a module with name "pydantic" in the root path.可能您在根路径中有一个 package 或一个名为“pydantic”的模块。

EDIT: on the screenshot of the error you have "pydantic" folder.编辑:在错误的屏幕截图中,您有“pydantic”文件夹。 Try to rename it尝试重命名

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM