随笔分类 -  python

ORM实现原理
该文被密码保护。

posted @ 2019-04-04 18:21 s-p-l 阅读(1) 评论(0) 推荐(0)

pyenv安装
该文被密码保护。

posted @ 2019-03-31 21:51 s-p-l 阅读(0) 评论(0) 推荐(0)

python 路径操作
摘要:python路径操作: 3.4版本之前:os.path模块 3.4版本开始,建议使用pathlib模块,提供Path对象来操作,包括目录和文件 目录操作: 路径拼接和分解: 操作符/ Path对象/Path对象;Path对象/字符串;字符串/Path对象 分解:parts属性,可以返回路径中的每一部 阅读全文

posted @ 2019-01-15 15:35 s-p-l 阅读(3979) 评论(0) 推荐(0)

python文件操作
摘要:文件IO常用操作: open(file,mode='r',buffering=-1,encoding=None,error=None,newline=None,closefd=True,opener=None):打开一个文件,返回一个文件对象和文件描述符,打开文件失败,则返回异常。 file:打开或 阅读全文

posted @ 2019-01-12 19:26 s-p-l 阅读(432) 评论(0) 推荐(0)

python描述器
摘要:描述器的表现:用到三个魔术方法:__get__()、__set__()、__delete__() 方法签名如下: object.__get__(self,instance,owner) object.__set__(self,instance,value) object.__delete__(sel 阅读全文

posted @ 2019-01-12 18:37 s-p-l 阅读(285) 评论(0) 推荐(0)

python类的继承
摘要:定义: 如果类定义时,没有基类列表,等同于继承自object,在python中,objec类是所有对象的根基类 查看继承的特殊属性和方法:__base__:类的基类,__bases__:类的基类元组,__mro__和mro():显示方法查找顺序,基类的元组,__subclasses__():类的子类 阅读全文

posted @ 2019-01-12 17:16 s-p-l 阅读(465) 评论(0) 推荐(0)

python反射
摘要:反射refletion:指的是运行时获取类型定义信息 运行时,区别在于编译时,指的是程序被加载到内存中执行的时候 简单的说,在python中,能够通过一个对象,找出其type,class,attribute或method的能力,称为反射或者自省 具有反射能力的函数有:type(),isinstanc 阅读全文

posted @ 2019-01-12 13:50 s-p-l 阅读(195) 评论(0) 推荐(0)

python魔术方法(二)
摘要:上下文管理: 文件IO操作可以对文件对象使用上下文管理,使用with...as语法 with open('test') as f: pass 当一个对象同时实现了__enter__()和__exit__()方法,就属于上下文管理的对象 __enter__:进入与此对象相关的上下文,如果存在该方法,w 阅读全文

posted @ 2019-01-12 00:10 s-p-l 阅读(314) 评论(0) 推荐(0)

python魔术方法
摘要:python魔术方法: 在Python中以两个下划线开头的方法,__init__、__str__、__doc__、__new__等,被称为"魔术方法"(Magic methods)。魔术方法在类或对象的某些事件出发后会自动执行,如果希望根据自己的程序定制自己特殊功能的类,那么就需要对这些方法进行重写 阅读全文

posted @ 2019-01-11 23:04 s-p-l 阅读(360) 评论(0) 推荐(0)

python面向对象
摘要:面向对象: 一种认识世界,分析世界的方法论,将万事万物抽象为类 类是抽象的概念,是万事万物的抽象,是一类事物的共同特征的集合,用计算机语言来描述类,就是属性和方法的集合 属性:它是对象状态的抽象,用数据结构来描述; 操作:它是对象行为的抽象,用操作名和实现该操作的方法来描述 一切皆对象,对象是数据和 阅读全文

posted @ 2019-01-10 00:49 s-p-l 阅读(905) 评论(0) 推荐(0)

python 高阶函数
摘要:python高阶函数: 接受一个或多个函数作为参数,输出一个函数 自定义sort函数: 内建函数-高阶函数 sorted(iterable[, key][, reverse]) 排序 sorted(iterable[, key][, reverse]) 排序 ,返回一个新的列表,对一个可迭代对象的所 阅读全文

posted @ 2019-01-09 22:04 s-p-l 阅读(139) 评论(0) 推荐(0)

python生成器
摘要:生成器: 生成器指的是生成器对象,可以由生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象 生成器函数: 函数体中包含yield语句的函数,返回生成器对象,生成器对象是一个可迭代对象,是一个迭代器,是延迟计算,惰性求值的 例: 普通函数调用fn(),函数会 阅读全文

posted @ 2019-01-09 21:38 s-p-l 阅读(188) 评论(0) 推荐(0)

python的functools模块
摘要:functools模块 partial方法:偏函数,把函数部分的参数固定下来,相当于为部分的参数添加了一个固定的默认值,形成一个新的函数并返回,从partial生成的新函数,是对原函数的封装 partial函数本质: @functools.lru_cache(maxsize=128,typed=Fa 阅读全文

posted @ 2019-01-09 20:40 s-p-l 阅读(214) 评论(0) 推荐(0)

python递归及斐波那契数列
摘要:递归: 函数直接或者间接调用自身就是递归,递归需要有边界条件,当边界条件不满足的时候,递归前进,当边界条件满足的时候,递归返回,递归相对运行效率低,每一次调用函数都要开辟栈帧。 递归调用的深度不宜过深,python对递归深度做了限制,以保护解释器,超过递归深度限制,抛出RecursionError。 阅读全文

posted @ 2019-01-09 19:46 s-p-l 阅读(1747) 评论(0) 推荐(0)

python参数注解
摘要:函数定义的弊端: python是动态语言,变量随时可以被赋值,且能赋值为不同的类型,动态语言很灵活,但是这种特性也是弊端 难发现:由于不做任何类型检查,直到运行期问题才显现出来,或者线上运行时才能暴露出问 题 难使用:函数的使用者看到函数的时候,并不知道你的函数的设计,并不知道应该传入什么类 型的数 阅读全文

posted @ 2019-01-09 18:30 s-p-l 阅读(4384) 评论(0) 推荐(0)

python装饰器
摘要:python装饰器是高阶函数 ,但装饰器是对传入函数的功能的增强,用于拓展原函数功能的函数,这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数的代码前提下给函数增加新的功能。 装饰器语法糖: 使用:@logger,这就是装饰器语法 例:记录函数的运行时常 阅读全文

posted @ 2019-01-09 16:44 s-p-l 阅读(242) 评论(0) 推荐(0)

python函数
摘要:函数: 由若干语句组成的语句块、函数名称、参数列表构成,它是组织代码的最小单元 ,完成一定的功能 作用:结构化编程对代码的最基本的封装,一般按照功能组织一段代码 ,封装的目的为了复用,减少冗余代码 ,代码更加简洁美观、可读易懂 函数参数:参数调用时传入的参数要和定义的个数相匹配(可变参数例外) 位置 阅读全文

posted @ 2019-01-09 15:16 s-p-l 阅读(729) 评论(0) 推荐(0)

python内建函数
摘要:id():返回对象的唯一标识,Cpython返回内存地址 input():接收用户输入,返回一个字符串 print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) :打印输出,默认使用空格分割、换行结尾,输出到控制台 divmod 阅读全文

posted @ 2019-01-04 00:00 s-p-l 阅读(178) 评论(0) 推荐(0)

python列表解析式与生成式表达式
摘要:一、列表解析式 语法: [返回值 for 元素 in 可迭代对象 if 条件] 使用中括号[],内部是for循环,if条件语句可选 返回一个新的列表 列表解析式是一种语法糖,编译器会优化,不会因为简写而影响效率,反而因优化提高了效率,减少程序员工作量,减少出错 ,简化了代码,但可读性增强 [expr 阅读全文

posted @ 2019-01-03 23:22 s-p-l 阅读(422) 评论(0) 推荐(0)

python time与datetime
摘要:一、标准库datetime datetime类:from datetime import datetime datetime.today():返回本地时区当前时间的datetime对象 datetime.now():返回当前时间的datetime对象,时间到微秒,如果tz为None,返回和today 阅读全文

posted @ 2019-01-03 22:20 s-p-l 阅读(320) 评论(0) 推荐(0)

导航