最近在学习tensorflow object detection API的源码,研究以下faster RCNN的实现。阅读到含有省略号的代码。不是很理解什么意思。
C:\Program Files\JetBrains\PyCharm Community Edition 2019.1.1\helpers\typeshed\stdlib\3\collections (__init__.pyi)
 
# namedtuple is special-cased in the type checker; the initializer is ignored.
if sys.version_info >= (3, 7):
    def namedtuple(typename: str, field_names: Union[str, Iterable[str]], *,
                   rename: bool = ..., module: Optional[str] = ..., defaults: Optional[Iterable[Any]] = ...) -> Type[tuple]: ...
elif sys.version_info >= (3, 6):
    def namedtuple(typename: str, field_names: Union[str, Iterable[str]], *,
                   verbose: bool = ..., rename: bool = ..., module: Optional[str] = ...) -> Type[tuple]: ...
else:
    def namedtuple(typename: str, field_names: Union[str, Iterable[str]],
                   verbose: bool = ..., rename: bool = ...) -> Type[tuple]: ...

 

 
我本人没有系统学过python,网上找了一圈,最后在Quora找到了。
在知乎也发现有个说明。
 
总结一下:
1.省略号在python里也是个对象。
2.=...(赋值号后面省略号),给该变量赋值一个default值。具体python的机制我不清楚。应该是在类里面定义好的。
3.: ...(冒号后面省略号),表示函数的定义内容不写了。
posted on 2019-05-26 16:45  常青dinghou  阅读(2099)  评论(0编辑  收藏  举报