这个语法“ ...”(省略号)是什么?

亚历克西斯

我正在查看Blender加载项的源代码,并且看到了新的语法:

def elem_name_ensure_class(elem, clss=...):
    elem_name, elem_class = elem_split_name_class(elem)
    if clss is not ...:
        assert(elem_class == clss)
    return elem_name.decode('utf-8')

是什么意思...

马丁·彼得斯(Martijn Pieters)

...是PythonElipsis对象的文字语法

>>> ...
Ellipsis

它主要由NumPy使用;请参阅Python Ellipsis对象做什么?

您找到的代码将其用作标记一种检测没有为clss关键字参数指定其他值的方法通常,您会使用None这样的值,但是这会使None自己失去使用价值的资格

就个人而言,我不喜欢Ellipsis当哨兵。我将始终创建一个专用的哨兵:

_sentinel = object()

def elem_name_ensure_class(elem, clss=_sentinel):
    elem_name, elem_class = elem_split_name_class(elem)
    if clss is not _sentinel:
        assert(elem_class == clss)
    return elem_name.decode('utf-8')

在Python 2...中使用订阅(object[...]外部表示法是语法错误,因此使用的技巧将代码限制为Python 3。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

XML省略号/其他语法-它叫什么?

来自分类Dev

这个 vba 语法是什么?

来自分类Dev

这个Javascript开放语法是什么?

来自分类Dev

这个Perl语法构造是什么?

来自分类Dev

这个Perl语法是什么意思?

来自分类Dev

这个语法是什么意思?

来自分类Dev

这个zsh的语法含义是什么?

来自分类Dev

这个CSS语法是什么意思?

来自分类Dev

这个语法是什么意思?

来自分类Dev

这个 Swift 语法是什么意思?

来自分类Dev

这个语法是什么意思 JAVASCRIPT

来自分类Dev

这个语法是什么意思 (...)

来自分类Dev

这个scala语法是什么意思?

来自分类Dev

这个python数组语法是什么

来自分类常见问题

列表中的省略号是什么意思?

来自分类Dev

Makefile.am中使用的省略号(...)是什么?

来自分类Dev

这个Bison语法有什么问题?

来自分类Dev

这个Gradle语法有什么问题?

来自分类Dev

这个Bison语法有什么问题?

来自分类Dev

这个 Rspec 语法究竟要求什么?

来自分类Dev

这个 mysql 语法有什么作用

来自分类Dev

这个 for Loop 语法有什么问题?

来自分类Dev

这个 ANTLR 语法有什么问题?

来自分类Dev

这个语法是什么意思?Func <任务,TResult> sampleFunction

来自分类Dev

这个语法在Swift中是什么意思?

来自分类Dev

这个JS对象声明语法是什么意思?

来自分类Dev

无法弄清楚这个语法错误是什么

来自分类Dev

这个PHP语法是什么意思?(问号)

来自分类Dev

这个语法中的开始符号是什么?