Python-第一类对象 first class object

今天说一个简单的概念: 第一类对象

我们在学闭包/装饰器的时候,很可能会看到这样一句话: “Python里的函数是第一类对象”,这里说的第一类对象,其实是表示函数作为一个对象,与其他的对象具有相同的地位。具体来说,首先推荐无论如何都要看一下这个帖子:

https://stackoverflow.com/questions/245192/what-are-first-class-objects

这个帖子已经说的超详细了,我这里就简单复述下

A first class object is an entity that can be dynamically created, destroyed, passed to a function, returned as a value, and have all the rights as other variables in the programming language have.

一个第一类对象就是指可以被动态创建,销毁,传递给其他函数,作为值返回的一个实体,并且与其他普通变量在变成语言里具有相同地位

这一句其实就已经足够了,python里的函数,也是一个完整的对象,我们可以看一下:

这里的function type 在 模块里有定义,叫做

有第一类对象,当然也有第二类对象,但由于我对其他编程语言了解实在有限,就推荐一下这个帖子好了:

http://www.codeweblog.com/%E7%AC%AC%E4%B8%80%E7%B1%BB%E5%AF%B9%E8%B1%A1-first-class-object/

来源:方禾黎

最近不知道该写什么了啊。。。求推荐内容

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180807G0BKGO00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券