vscode导入模块不显示类型注解

目录结构:

utils.py

python 复制代码
import random
def select_Jrandom(i:int, m:int) -> int:
    """
    随机选择一个不等于 i 的整数
    """
    j = i
    while j == i:
        j = int(random.uniform(0, m))
    return j

def clip_alpha(alpha_j:float, H:float, L:float) -> float:
    """
    修剪 alpha_j
    """
    if alpha_j > H:
        alpha_j = H
    if alpha_j < L:
        alpha_j = L
    return alpha_j

smoSimple.py

python 复制代码
from utils import (
    select_Jrandom, 
    clip_alpha)

import numpy as np
import pdb
...

在vscode中导入utils模块时,导入后不显示类型注解。

但是以.utils形式导入就有注解:

但是,以.uitls导入后,运行python smoSimple.py就会报错

报错信息为:

shell 复制代码
 File "E:\Graduate\ML_PDE\ML\SVM\smoSimple.py", line 1, in <module>
    from .utils import (
ImportError: attempted relative import with no known parent package

python -m smoSimple.py报错信息:

shell 复制代码
(base) PS E:\Graduate\ML_PDE\ML\SVM> python -m .\smoSimple.py
E:\Anacoda_store\python.exe: Relative module names not supported

当我将目录utils改个名字后,发现就有类型注解。

综上,应该是两个utils的存在,导致vscode不能智能选择哪个而产生错误。

相关推荐
0566468 小时前
agent学习Day15——SQLAlchemy 查询过滤、分页与历史列表接口
python·学习·fastapi
程序员爱德华9 小时前
Python与C++:异同点对比
c++·python
hangyuekejiGEO9 小时前
GEO技术服务选型指南
大数据·人工智能·python
软萌萌的110 小时前
Java Spring Boot 修改yml配置&加载顺序规则
java·spring boot·python
Dxy123931021611 小时前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
持敬chijing12 小时前
Python概述
开发语言·python
赤羽尾风14 小时前
NumPy快速入门
python·numpy
倒流时光三十年14 小时前
第三阶段 26 · highlight 高亮(返回命中片段)
后端·python·django
久久学姐16 小时前
Python+Playwright+Pytest+BDD,用FSM打造高效测试框架
python·pytest·bdd·playwright·fsm