单纯的理解“python中的函数是一等公民”这句话,可能包含几层意思:
成都创新互联公司专注于企业营销型网站、网站重做改版、安居网站定制设计、自适应品牌网站建设、html5、商城开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为安居等各大城市提供网站开发制作服务。
正确的理解是:第1点和第2点,不包含第3点的意思。
python中的函数是一等公民,重点想表述的是: 在python世界人人平等 。
人人平等的世界,至少应该包含两层意思:1. 身份地位平等; 2. 行使的权利平等。
打印结果是:
从上面的打印结果中可以看出:
1.Python 程序中的所有数据都是某个类的实例,因而是一个对象;
2.类本身也是一个对象。int, float, str, list, dict, set, fuction, module, NoneType, object, type等,这些类都是type类的实例,也是一个对象;
3.object类是所有类的基类
4.object是顶级父类
函数function和其他公民一样,他们的都有一个共同的身份:对象 。
在c++和java里,数据是数据,动作是动作,他俩的结合是类(class)。对于python,数据是数据,动作也可以是数据,这个牛逼的数据叫做对象object。
对于函数function来讲,既可以安静的做一个数据,又可以优雅的执行动作。
Python 官方文档里这样解释 对象(object) 的含义:Python 中的对象是对数据的抽象,Python 程序中所有数据都是由对象或者对象间的关系来表示的。每个对象都有各自的编号、类型和值。
两个祖先(a和b)占了相邻的两块内存,一个可以与它的“后代”共用内存,一个却只能让“后代”另立门户;当它们走完自己的生命周期后,b会马上被当垃圾回收,内存地址遗产被剥夺,然而a却形灭而实存,荫庇后世。
Python为这些对象倾斜资源,也就是为某种阶层固化提供了合法性。划分的依据是因为它们比较常用,共用内存就意味着减少开支,提高内存使用效率。
这就是Python有趣的地方了,一面是全体公民,一面是特权种族,组成了看似矛盾的二元对立结构。
参考:
类,class,用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
函数,是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。你已经知道python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
python语言中类和函数的区别是什么?
1、规则不同
类是一种引用数据类型,类似于byte、short、int(char)、long、float、double等基本数据类型;
函数必须声明后才可以被调用,调用格式为:函数名(实参)调用时函数名后的小括号中的实参必须和声明函数时的函数括号中的形参个数相同。
2、主体不同
类是面向对象程序设计实现信息封装的基础;
函数是指一段在一起的、可以做某一件事的子程序。
3、特点不同
类是一种用户定义的引用数据类型,也称类类型,每个类包含数据说明和一组操作数据或者传递消息的函数,类的实例称为对象;
函数分为全局函数、全局静态函数,在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。
一、主体不同
1、类:是面向对象程序设计实现信息封装的基础。
2、函数:是指一段在一起的、可以做某一件事儿的程序。也叫做子程序、(OOP中)方法。
二、特点不同
1、类:是一种用户定义的引用数据类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数。类的实例称为对象。
2、函数:分为全局函数、全局静态函数;在类中还可以定义构造函数、析构函数、拷贝构造函数、成员函数、友元函数、运算符重载函数、内联函数等。
三、规则不同
1、类:实质是一种引用数据类型,类似于byte、short、int(char)、long、float、double等基本数据类型,不同的是它是一种复杂的数据类型。
2、函数:函数必须声明后才可以被调用。调用格式为:函数名(实参)调用时函数名后的小括号中的实参必须和声明函数时的函数括号中的形参个数相同。
参考资料来源:百度百科-函数
参考资料来源:百度百科-类