【问题标题】:type hinting default values in classes类中的类型提示默认值
【发布时间】:2022-06-30 17:02:38
【问题描述】:

如果尚未分配值,我如何正确创建类型提示。

例如:

class foo():
    def __init__():
        data: np.ndarray = None

    def load_data():
        data = np.loadtxt(...)

现在我显然得到一个警告,该类型 ndarray 是预期的,而不是 None。什么是优雅的解决方案?我只是编造一些像data: np.ndarray = np.array([]) 这样的ndarray 吗?这对我来说是错误的,我相信有更好的方法。

我还是更喜欢 None 版本,因为如果读取 numpy 数组时出现错误,我会收到类似“无法计算...类型为 None”的错误。然后我立即知道,它没有读取文件。然而,如果数组只是空的,我可能会得到奇怪的错误,我不明白。

【问题讨论】:

  • from typing import Optional?

标签: python numpy class typing


【解决方案1】:

考虑使用data: np.ndarray = np.empty([])
或者,如果您知道数组的维度,请使用其维度对其进行初始化。 请参阅numpy.empty 了解更多信息。

祝你好运,

【讨论】:

    猜你喜欢
    • 2012-01-21
    • 1970-01-01
    • 2013-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多