函数:
1. 函数一定存在返回值,没返回值时返回None; 2. 函数内赋新值不会改变外部任何变量的值,这一点类似java;但是对于可变参数列表另当别论;
3. == 判断相等性,值考虑空间里面值的情况;is 同一性(等级更高,必然具有相等性)
4. 位置参数-> 关键字参数-> 收集参数:收集其他位的参数(一个*,函数内部接收到的是tuple,本来是tuple那么前面加*,就成了这种可变参数):定义收集参数,使用位置参数— >同时收集参数:收集带默认的参数构成字典(两个**,函数内部接收到的是dict)—>收集参数逆运算—>定义和调用都使用,或者不使用结果没区别
5. 作用域:vars(),返回不可见字典,全局作用域; 6. 每个函数存在自己的局部作用域; 函数内部声明全局变量要用,global;
7. 递归程序设计,存在尾递归问题,返回函数调用本身没有其他东西可以避免;lambda启动匿名函数!!!
类:
1.类当中存在方法,它的第一个参数self,表示对象自身。它也是函数和方法的区别 2. 特性是可以外部访问的。
3.定义私有函数:函数或者特性前面加2个下划线;访问方法:_类名__私有特性或者方法();
4.子类和超类的关系通过类似函数的方式传递;
5.issubclass 检查字累和超类间关系;_bases__ 获取基类信息;isinstance() 检查对象是否是一个类实例;
6. 支持多重继承;
时间: 2024-12-26 00:57:52