如何解决获取python省略号...类型而不必将其定义为`type...`
有没有办法获取python的SELECT
DATE_TRUNC('month',pl.event_date)::date AS month,SUM(pl.marketing_costs)
FROM PaL pl
GROUP BY 1;
类型?我看到执行 Ellipsis
和 type(Ellipsis)
返回 type(...)
,但是通过编写 <class 'ellipsis'>
,似乎 x = ellipsis()
不是默认定义的数据类型({{ 1}}).
我认为 ellipsis
内置模块可以为我的问题提供解决方案,但以下内容也会引发错误。
NameError: name 'ellipsis' is not defined
我真正需要的是做这样的事情:
builtins
显然以前的作品,但我想有一个更漂亮的解决方案,只是 import builtins
_ellipsis = builtins.ellipsis # AttributeError: module 'builtins' has no attribute 'ellipsis'
解决方法
Ellipsis
与省略号文字“...”相同。特殊值主要与用户定义的容器数据类型的扩展切片语法结合使用。 Ellipsis
是 types.EllipsisType
type 的唯一实例。
因此,在 Python 3.10 (!) 中,您可以使用 types.EllipsisType
来表示这种类型。
否则,您可以像这样定义自己的变量:
EllipsisType = type(...)
然后在类型声明中使用它
,就目前而言,您正在做的事情是获得它的唯一方法。
在 Python 3.10 中,它将在 types 模块中可用。
3.10 还在这里添加了 NoneType
和 NotImplementedType
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。