自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (1)
  • 收藏
  • 关注

原创 python 在虚拟环境中安装项目依赖requirements.txt

进入到了虚拟环境中:切到虚拟环境目录的Script文件下,输入命令:pip install –r 目录/requirements.txt

2018-05-30 15:56:55 4434

原创 python虚拟环境 venv

1.      打开cmd命令行模式2.      Cd到python安装根目录3.      在项目根目录下新建一个存放虚拟环境的文件夹4.      执行命令python –m venv 虚拟环境目录5.      进入虚拟环境:切到虚拟环境目录的Script文件下,输入命令:activite6.      进入到了虚拟环境...

2018-05-30 15:55:54 3207

原创 python 属性引用:__getattr__和__setattr__

#__getattr__方法是拦截属性点号运算,更确切的说,当通过对未定义(不存在)属性名称和实例进行点号运算时,就会用属性名称作为字符串调用这个方法,如果能通过继承数搜索流程找到这个属性,该方法就不会被调用class empty:    def __getattr__(self, attrname):        if attrname=='age':            return 40...

2018-05-25 16:26:01 361

原创 python 成员关系:__contains__,__iter__和__getitem__

#__contains__优于__iter__优于__getitem__方法#__contains__方法应该把成员关系定义为对一个映射应用键(并且可以使用快速查找),以及用于序列的搜索class Iters:    def __init__(self, value):        self.data=value    def __getitem__(self, i):           pr...

2018-05-25 15:59:17 3125

原创 python 运算符重载迭代器对象__iter__,__next__

#python中所有的迭代环境都会先尝试__iter__方法,在尝试__getitem__,只有在对象不支持迭代协议时,才会尝试索引#迭代环境是通过调用内置函数iter去尝试寻找__iter__方法来实现的,而这种方法应该返回一个迭代器,如果已经提供了,python会重复调用这个迭代器对象的next方法,直到发生stopIteration异常,如果没有找到__iter__方法,python会改用_...

2018-05-25 14:22:28 1639

原创 python 运算符重载__getitem__和__setitem__

class Indexer:    def __getitem__(self, index):    #重载索引,对于实例的索引运算,会自动调用__getitem__        return index**2x=Indexer()print(x[3])    #9for i in range(5):    print(x[i], end=', ')    #0, 1, 4, 9, 16,   ...

2018-05-25 13:22:10 2990

原创 python 类方法调用、继承和调用超类构造函数

#实例调用 instance.method(args...)#类调用 class.method(instance, args...)class NextClass:    def printer(self, text):    #可被类的所有实例所继承        self.message=text        print(self.message)    x=NextClass()x.pri...

2018-05-24 14:09:33 2658

原创 python 对象持久化

testdemo.pyclass AttrDisplay():    def gatherAtters(self):        attrs=[]        for key in sorted(self.__dict__):            attrs.append('%s=%s'%(key, getattr(self, key)))        return ', '.join(a...

2018-05-23 16:53:43 1115

原创 python 内省工具

#内省工具是特殊的属性和函数,允许我们访问对象实现的一些内部机制class Person:    def __init__(self, name, job=None, pay=0):        self.name=name        self.job=job        self.pay=pay        def lastName(self):        return self....

2018-05-23 14:49:19 653

原创 python 复合对象

#一种常用的编码模式是把对象彼此嵌套以组成复合对象class Person:    def __init__(self, name, job=None, pay=0):        self.name=name        self.job=job        self.pay=pay        def lastName(self):        return self.name.sp...

2018-05-23 14:21:50 524

原创 python 类属性

class FirstClass:    def setdata(self, value):        self.data=value    def display(self):        print(self.data)        x=FirstClass()y=FirstClass()x.setdata('xxx')y.setdata('yyy')x.display()   #xx...

2018-05-23 13:41:01 220

原创 python 运算符重载

#运算符重载就是让用类写成的对象,可截获并响应用在内置类型上的运算:加法,切片,打印和点号运算等#1. 以双下划线命名的方法(__X__)的特殊钩子,python运算符重载的实现是提供特殊命名的方法来拦截运算,python替每种运算和特殊命名的方法之间,定义了固定不变的映射关系#2. 当实例出现在内置运算时,这类方法会自动调用,例如,如果实例对象继承了__add__方法,当对象出现+表达式内时,该...

2018-05-21 13:03:47 1004

原创 python 用字符串名称导入模块

#exec将一个代码字符串传递给python解释器以执行modname='string'exec("import "+modname)print(string)   #<module 'string' from 'D:\\python3\\lib\\string.py'>#__import__函数来导入modname='sys'string=__import__(modname)pri...

2018-05-17 14:48:54 1920

原创 python 混合用法模式:__name__和__main_

#如果文件以顶层文件执行,在启动时,__name__就会设置为字符串__main__#如果文件被导入,__name__就会改设为客户端的模块名'''eggs.pyprint(__name__)'''import eggs   #导入eggs,eggs文件中的__name__=eggsprint(__name__)   #顶层文件执行,__name__=__main__...

2018-05-16 15:28:07 156

原创 python _X和__all__隐藏模块

#最小化from *的破坏:_X和__all__隐藏模块#_X可以防止from *语句导入时把其中的变量名复制出去,但是还是可以通过其他方式来看见该变量名'''eggs.pyx=9999_X=8888'''import syssys.path.append('D:/test')from pkg.eggs import *#print(_X)   #builtins.NameError: name ...

2018-05-16 14:07:03 634

原创 python 模块包

'''模块包python代码的目录就被成为包包导入是吧计算机上的目录变成python的命名空间包导入最左边的部分仍然是sys.path模块搜索路径列表中的一个目录__init__.py包文件包导入语句的路径中的每个目录内都必须有__init__.py文件,否则导入包会失败d:/a/b/c/d.pyd:/a加入到sys.path中import b.c.d导入d.py则a目录中不需要__init__....

2018-05-15 13:29:47 159

原创 python 模块

import语句:载入模块文件,会执行一次文件内容从而建立其中的内容

2018-05-11 11:16:39 1146

原创 python 函数默认可变参数陷阱

def saver(x=[]):    x.append(1)    print(x)    saver()saver()saver()#output[1][1, 1][1, 1, 1]#因为默认列表在def语句执行时被创建,不会每次函数调用都得到一个新的李彪,所以每次新的元素加入后,列表会变大#同上效果def saver():   

2018-05-10 16:31:07 151

原创 python 生成器

'''生成器函数:编写为常规的def语句 ,但是使用yield语句一次返回一个结果,在每次结果之间挂起和继续他们的状态生成器表达式:类似于列表解析,但是,他们返回按需产生结果的一个对象,而不是构建一个结果列表生成器函数yield vs return状态挂起和返回一个值并退出常规函数不同,生成器函数自动在生成值的时刻挂起并继续函数的执行,挂起时保存的状态包含他们的整个本地作用

2018-05-10 13:04:49 105

原创 python 函数参数

#不可变参数"通过值"进行传递def f(a):    a=99    print(a)       b=88f(b)    #99print(b)    #88#可变对象是通过"指针"进行传递的,如列表,字典def changer(a,b):    a=2    b[0]='spam'x=1l=[1,2]changer(x,l)pr

2018-05-08 17:33:38 242

原创 python 函数作用域

变量可以在三个不同的地方分配1. 如果一个变量在def内赋值,它被定位在这个函数之内2. 如果一个变量在一个嵌套的def中赋值,对于嵌套函数来说,他是非本地的3. 如果在def之外赋值,他就是整个文件全局的作用域法则1. 内嵌模块是全局作用域2. 全局作用域的作用范围仅限于单个文件3. 每次对函数的调用都创建了一个新的本地作用域4. 函数中赋值的变量名除非声明为全局变量或非本地变量,否则均为本地变...

2018-05-08 12:09:37 180

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除