问题描述
在我们的测试中,我们测试了 numpy 的多个版本。旧版本没有我们想要在打字中定义的某些类 (np.random.Generator
),所以我选择根据检查 numpy 版本来定义类型:
# random generator
if np_version_under1p17:
RandomState = Union[int,ArrayLike,np.random.RandomState]
else:
RandomState = Union[int,np.random.Generator,np.random.RandomState]
但这会导致:
Cannot assign multiple types to name "RandomState" without an explicit "Type[...]" annotation
RandomState = Union[int,np.random.RandomState]
但是我们使用旧 numpy 版本的测试将失败。
定义 RandomState
的最佳方式是什么,但以这样一种方式定义它,以便它在我们的测试中适用于较新和较旧的 numpy 版本。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)