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不能智能选择哪个而产生错误。

相关推荐
databook11 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室12 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三13 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
用户25191624271117 小时前
Python之语言特点
python
刘立军17 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql
数据智能老司机20 小时前
精通 Python 设计模式——创建型设计模式
python·设计模式·架构
数据智能老司机21 小时前
精通 Python 设计模式——SOLID 原则
python·设计模式·架构
c8i1 天前
django中的FBV 和 CBV
python·django
c8i1 天前
python中的闭包和装饰器
python
这里有鱼汤1 天前
小白必看:QMT里的miniQMT入门教程
后端·python