Python笔记(二十九)_模块】的更多相关文章

模块 在Python中,一个.py文件就是一个模块 if __name__ == '__main__':所有模块都有一个 __name__ 属性,__name__ 的值取决于如何应用模块 run当前文件时,__name__ 属性的值是 '__main__',此函数被执行: *可用于调试当前文件中的函数 当前文件被其他模块调用时,__name__ 属性的值是该模块的名字,此函数不会被执行: *可以直接被第三方调用 也是因为此,要注意模块被调用时会加载模块,导致这个模块被“执行”,所以要将功能代码块…
属性的魔法方法 __getattribute__(self,name):当该类的属性被访问时,自动触发,是最先被触发的属性方法 __setattr__(self,name,value):当一个属性被设置时,自动触发 __delattr__(self,name):当一个属性被删除时,自动触发 >>>class C: def __getattribute__(self,name): print('getattribute') def __getattr__(self,name): print…
算数运算方法 .反运算方法 以对象A+对象B为例,都是将A作为self值,而B作为other值传入__add__(self,other)方法: 当用户输入A+B,就会调用重写的add方法: >>>class Nint(int): def __add__(self,other): return int.__sub__(self,other) def __sub__(self,other): return int.__add__(self,other) >>>A = Nin…
迭代器用于遍历容器中的数据,但它不是容器,它是一个实现了__next__方法的对象 与迭代器相关的内置函数: iter(): 将一个对象转换成一个迭代器 next(): 访问迭代器中的下一个变量,直到无可用变量,则抛出StopIteration异常 >>>string = 'demi' >>>name = iter(string) >>>next(name) 'd' >>>next(name) 'e' >>>for…
描述符的属性方法 __get__(self, instance, owner): 用于访问属性,返回属性的值 __set__(self, instance, value): 用于给属性赋值时,返回属性的值 __delete__(self, instance): 用于删除属性时,不返回任何内容 将某种特殊类型的类的实例指派给另一个类的属性(注意:是类属性,不是实例属性),而这种特殊类型的类是实现了__get__,__set__,__delete__这三个方法中的一个或多个,此时这个实例被称为描述符…
__init__(self[,...]) __init__和__new__组成python的构造器,但__init__更多的是负责初始化操作,相当于一个项目中的配置文件,__new__才是真正的构造函数,创建并返回一个实例对象,如果__new__只调用了一次,就会得到一个对象 __new__(cls[,...]) 当继承一个不可修改的类,但又想去修改的时候,需要重写__new__方法 >>>class Capstr(str): #str是一个不可修改的类 def __new__(cls,…
多态 对于函数中的变量,我们只需要知道它这个变量是什么类,无需确切地知道它的子类型,就可以放心地调用类的方法,而具体调用的这个方法是作用在父类对象还是子类对象上,由运行时该对象的确切类型决定,这就是多态真正的威力 >>>class Animal: #定义一个父类 def run(self): print('animal is running...') >>>class Dog(Animal): #继承于Animal类 def run(self): print('Dog…
习题 29: 如果(if) 下面是你要写的作业,这段向你介绍了“if语句”.把这段输入进去,让它能正确执行.然后我们看看你是否有所收获. people = 20 cats = 30 dogs = 15 if people < cats: print "Too many cats! The world is doomed!" if people > cats: print "Not many cats! The world is saved!" if pe…
angular中的$q是用来处理异步的(主要当然是http交互啦~). $q采用的是promise式的异步编程.什么是promise异步编程呢? 异步编程最重要的核心就是回调,因为有回调函数,所以才构成了异步编程,而回调有三个关键部分: 一是什么时候执行回调,二是执行什么回调,三是回调执行的时候传入什么参数. 就以最常见的jquery Ajax举例,发送一个请求后: 什么时候执行回调: 请求成功(或者失败)的时候 执行什么回调: 根据请求成功或者失败,执行相应的回调函数 回调执行的时候传入的什么…
一个Java面向对象的小练习 一:项目需求与解决思路: 学习了这么长时间的面向对象,我们只是对面向对象有了一个简单的认识,我们现在来做一个小练习,这个例子可以使大家更好的掌握面向对象的特性: 1.人类都有说话的能力,那我们可不可以使用计算机程序来描述其特征呢. 2.如果是中国人,那么他的语言能力就直接输出中国人说中国话.如果是美国人,那么他的语言能力就直接输出美国人说美国话. 3.分别在测试类中创建两个对象,创建了中国人对象的话,他应该说的是中国话,创建了美国人的话,他应该说的是英语. 4.那么…