python新式类 旧式类: python2.2之前的类称为旧式类,之后的为新式类.在各自版本中默认声明的类就是各自的新式类或旧式类,但在2.2中声明新式类要手动标明: 这是旧式类为了声明为新式类的方式 class A: #手写把元类 metaclass 给 type __metaclass__ = type pass #或者这样写,效果是一样的 class B(object): #手动指定继承自object类,object类是最初的类,一切类都是object的子类,是祖宗 pass  对于cl…
python面向对象的三大特性: 多态,封装,继承 多态: 在不知道对象到底是什么类型.又想对其做一些操作时,就会用到多态 如 'abc'.count('a') #对字符串使用count函数返回a的数量 ['a','b','c'].count('a') #对列表使用count返回a的数量 类型虽然不同,但是都可以调用count()来实现同样的目的,这就是多态. 毁掉多态: 一些类型检查会毁掉多态,如type isinstance issubclass等等. 实际上应该尽量少用这些,而多用多态.…
java中提供类与类之间提供单继承. 提供多继承会可能出现错误,如:一个类继承了两个父类,而两个父类里面都有show()方法. class Fulei1{ public void show(){ System.out.println("父类1"); } } class Fulei2{ public void show(){ System.out.println("父类2"); } } class Zilei extends fulei1,fulei2{ public…
1.函数     php内置函数可以直接使用,如果没有安装php扩展即可     自定义函数 //函数function 函数名 function dump($var = null){ //支出默认参数值 echo '<pre/>'; var_dump($var); } 2.类(class)和对象( new Obj) <?php //定义一个人的类,现在还不是对象 class Person { //私有属性 private $eye = '大眼睛'; private $mouth = '小…
input()与raw_input(): 两者都是接受命令行输入,但区别在于,raw_input()接受原始数据(raw data). #使用input()来提示输入名字 input("enter your name:") #这样在实际输入名字的时候,写 myname 是会报错的,抛出NamError的异常 #必须要这样写 'myname',可这显然是不人道的. #使用raw_input() raw_input("enter your name:") #这样就正常了…
用import关键字导入模块的几种方式: #python是自解释的,不必多说,代码本身就是人可读的 import xxx from xxx import xxx from xxx import xx1,xx2,xx3 from xxx import * import xxx as xxx from xxx import xxx as xxx 序列解包赋值: x,y,z = 1,2,3 #右侧1,2,3实际是一个(1,2,3)的tuple,然后解包出来再分别赋值 x,y = y,x #同理,交换赋…
序列相加: [1,2] + [3,4] == [1,2,3,4] #字符串也是序列的一种 'hello' + 'world' == 'hello world' #但是序列相加只限于相同类型的序列间相加.所以 [1] + 'haha' #这样是会报错的 序列相乘: #数字乘以序列会产生新的序列: 'python' * 3 == 'pythonpythonpython' [1,2] * 3 == [1,2,1,2,1,2] #创建一个占用n个元素空间的列表: mylist = [None] * 4…
callable()函数: 检查对象是否可调用,所谓可调用是指那些具有doc string的东西是可以调用的. 函数的参数变化,可变与不可变对象: 首先,数字 字符串 元组是不可变的,只能替换. 对以前的形参实参的理解适用于这些不可变对象.即形参实参互不影响. 但是对于可变对象如list dict,形参与实参就会互相影响. 如果想拿到一个副本从而不影响原变量,用列表分割:mylist[:] 收集参数: func(a,*b): b接受除了第一个给a的余下参数,以元组形式储存 func(a,*b,*…
dict中键只有在值和类型完全相同的时候才视为一个键: mydict = {1:1,':1} #此时mydict[1] 与 mydict['1']是两个不同的键值 dict的一些常用方法: clear(): #清空字典 copy(): #浅复制字典 copy.deepcopy(): #深复制 get('xx', 'return'): #访问元素不存在时返回None,或者手动指定返回值 has_key(): #检查字典中是否含有键,相当于 in 关键字 items(): #将字典以列表[(k,v)…
使用 % 符号格式化字符串: """常用转换说明符:""" #%s: 按照str()方式转换 #%r: 按照repr()方式转换 #%d: 十进制整数 #%f: 十进制浮点数 #%x/%X:小写/大写无符号十六进制数 #%e/%E:小写/大写科学计数法 """宽度与精度""" "'%10.2f'" % 3.1415 #这里的10表示转换后字符宽度,2表示精确到小数点2…