Python - 为什么类列在内置函数列表中?

时间:2018-01-25 09:33:31

标签: python

Python文档将property()列为built-in function

但是,函数description在文档中前面有关键字“class”。

  

class property (fget = None,fset = None,fdel = None,doc = None)

也会发生这种情况
  

class set ([iterable])

  

class 切片(停止)

这是什么意思? - 为什么类在内置函数下列出。这只是一个文档问题还是有技术原因?

编辑:我不是在询问property()的工作原理。

1 个答案:

答案 0 :(得分:3)

Python glossary将函数定义为:

  

一系列语句,它们向调用者返回一些值。它也可以传递零个或多个参数,这些参数可以用于执行正文。

一个类可以传递参数,并向调用者返回一个值,因此可以说这个定义类函数*。

此外(如评论中的deceze指出),类应始终返回自身的实例 - setpropertyslice等。所有返回{的实例分别为{1}},setproperty等 - 所以sliceset和朋友都是也是类,所以他们记录如下:

  

class set ([ iterable ])

意味着property是一个类,而不是返回一个。

我猜在{"内置函数"中记录了set等。页面因为a)它们是可调用的,并且b)方便的所有文档都可以调用"你可以调用的东西"在一个地方。

*严格地说,set对于任何类isinstance(C, types.FunctionType)都是假的(据我所知),但类肯定是callables(C是真的),这可能是一个想想更有用的财产。