随笔分类 -  python

Python学习记录
摘要:在 Python 中,数据的属性和处理数据的方法统称属性(attribute)。其实,方法只是可调用的属性。除了这二者之外,我们还可以创建特性(property),在不改变类接口的前提下,使用存取方法(即读值方法和设值方法)修改数据属性 除了特性,Python 还提供了丰富的 API,用于控制属性的 阅读全文
posted @ 2018-02-02 10:26 菲菲菲菲菲常新的新手 阅读(217) 评论(0) 推荐(0)
摘要:协程是个子程序,执行过程中,内部可中断,然后转而执行别的子程序,在适当的时候再返回来接着执行 从句法上看,协程与生成器类似,都是定义体中包含 yield 关键字的函数。可是,在协程中,yield 通常出现在表达式的右边(例如,datum = yield),可以产出值,也可以不产出——如果 yield 阅读全文
posted @ 2018-02-01 15:20 菲菲菲菲菲常新的新手 阅读(234) 评论(0) 推荐(0)
摘要:对比一个简单的多线程程序和对应的 asyncio 版,说明多线程和异步任务之间的关系asyncio.Future 类与 concurrent.futures.Future 类之间的区别摒弃线程或进程,如何使用异步编程管理网络应用中的高并发在异步编程中,与回调相比,协程显著提升性能的方式如何把阻塞的操 阅读全文
posted @ 2018-02-01 10:03 菲菲菲菲菲常新的新手 阅读(1309) 评论(0) 推荐(0)
摘要:从 Python 3.4 起,标准库中有两个名为 Future 的类:concurrent.futures.Future 和asyncio.Future。这两个类的作用相同:两个 Future 类的实例都表示可能已经完成或者尚未完成的延迟计算 我们要记住一件事:通常情况下自己不应该创建期物,而只能由 阅读全文
posted @ 2018-01-31 17:02 菲菲菲菲菲常新的新手 阅读(292) 评论(0) 推荐(0)
摘要:从句法上看,协程与生成器类似,都是定义体中包含 yield 关键字的函数。可是,在协程中,yield 通常出现在表达式的右边(例如,datum = yield),可以产出值,也可以不产出——如果 yield 关键字后面没有表达式,那么生成器产出 None。协程可能会从调用方接收数据,不过调用方把数据 阅读全文
posted @ 2018-01-31 14:45 菲菲菲菲菲常新的新手 阅读(233) 评论(0) 推荐(0)
摘要:with 语句和上下文管理器for、while 和 try 语句的 else 子句 with 语句会设置一个临时的上下文,交给上下文管理器对象控制,并且负责清理上下文。这么做能避免错误并减少样板代码,因此 API 更安全,而且更易于使用。除了自动关闭文件之外,with 块还有很多用途 else 子句 阅读全文
posted @ 2018-01-31 11:41 菲菲菲菲菲常新的新手 阅读(150) 评论(0) 推荐(0)
摘要:在python中,所有集合都可以迭代,在python语言内部,迭代器用于支持 for循环 构建和扩展集合类型 逐行遍历文本文件 列表推导,字典推导和集合推导 元组拆包 调用函数时,使用*拆包实参 本章涵盖的话题 语言内部使用 iter(...) 内置函数处理可迭代对象的方式如何使用 Python 实 阅读全文
posted @ 2018-01-31 11:16 菲菲菲菲菲常新的新手 阅读(240) 评论(0) 推荐(0)
摘要:运算符重载基础 不能重载内置类型的运算符 不能新建运算符,只能重载现有的 某些运算符不能重载 is,and,or和not(不过位运算符&,|和~可以) 一元运算符 阅读全文
posted @ 2018-01-30 14:28 菲菲菲菲菲常新的新手 阅读(161) 评论(0) 推荐(0)
摘要:子类化内置类型的缺点 多重集成和方法解析顺序 tkinter 阅读全文
posted @ 2018-01-30 11:35 菲菲菲菲菲常新的新手 阅读(221) 评论(0) 推荐(0)
摘要:鸭子协议(忽略对象真正类型,转而关注对象有没有实现所需的方法,签名和语义) 标准库中的抽象基类 collections.abc模块中的抽象基类 抽象方法是抽象基类中用来强制子类必须实现的方法,如果子类不实现该方法,则会报错 上述例子中的load,pick属于抽象方法,Tombola的子类必须实现这两 阅读全文
posted @ 2018-01-30 10:46 菲菲菲菲菲常新的新手 阅读(148) 评论(0) 推荐(0)
摘要:class Kls(object): def __init__(self, data): self.data = data def printd(self): print(self.data) @staticmethod def smethod(*arg): print('Static:', arg 阅读全文
posted @ 2018-01-30 10:26 菲菲菲菲菲常新的新手 阅读(396) 评论(0) 推荐(0)
摘要:只要实现了__len__和__getitem__两个方法即可将该类视为序列。 切片原理 动态存取属性 如果实现了__getattr__方法,也要定义__setattr__方法,以防对象行为不一致 阅读全文
posted @ 2018-01-29 17:45 菲菲菲菲菲常新的新手 阅读(219) 评论(0) 推荐(0)
摘要:首先:下载tinymce 地址是https://www.tinymce.com/ 点击download 下载社区版本即可 接着:把压缩包内tinymce目录内的所有文件和文件夹复制到Django项目中static/js目录内: 然后编辑admin文件 紧接着在/static/js/tinymce/j 阅读全文
posted @ 2018-01-29 16:30 菲菲菲菲菲常新的新手 阅读(1583) 评论(2) 推荐(0)
摘要:对象表示形式 每门面向对象的语言至少都有一种获取对象的字符串表示形式的标准方式。Python提供了两种方式 repr()便于开发者理解的方式返回对象的字符串表示形式 str()便于用户理解的方式返回对象的字符串表示形式 要实现__repr__,__str__特殊方法为repr(),str()提供支持 阅读全文
posted @ 2018-01-29 13:59 菲菲菲菲菲常新的新手 阅读(169) 评论(0) 推荐(0)
摘要:变量不是盒子 在==和is之间选择 ==比较两个对象的值,而is比较对象的标识 元组的相对不可变姓 元组与多数的python集合(列表,字典,集,等等)一样,保存的是对象的引用。如果引用的元素是可变的,即便元组本身不可变,元素依然可变。元组的不可变姓其实是值tuple数据结构的物理内容(保存的引用) 阅读全文
posted @ 2018-01-29 10:44 菲菲菲菲菲常新的新手 阅读(240) 评论(0) 推荐(0)
摘要:本章讨论的话题 python如何计算装饰器句法 python如何判断变量是不是局部的(通过函数内部是否给变量赋值过来判断是否是局部变量) 闭包存在的原因和工作原理(闭包是一种函数,它会保留定义函数时存在的自由变量的绑定,这样调用函数时,虽然定义作用域不可用了,但是仍能使用那些绑定。函数中的函数) n 阅读全文
posted @ 2018-01-29 09:20 菲菲菲菲菲常新的新手 阅读(191) 评论(0) 推荐(0)
摘要:在python中,函数是一等对象,一等对象是满足以下条件的程序实体 1在运行时创建 2能复制给变量或数据结构的元素 3能作为参数传给函数 4能作为函数的返回结果 高阶函数(接受函数作为参数或者把函数作为结果返回的函数),如map和sorted函数 最为人熟知的高阶函数有map,filter,redu 阅读全文
posted @ 2018-01-25 10:09 菲菲菲菲菲常新的新手 阅读(178) 评论(0) 推荐(0)
摘要:字符问题 把码位转化成字节序列的过程是编码,把字节序列转化成码位的过程是解码 把unicode字符串当成人类可读的文本,码位当成机器可读的, 将字节序列编程人类可读是解码,把字符串编码成字节序列是编码 字节概要 python内置了两种基本的二进制序列类型,python3引入的不可变的bytes类型和 阅读全文
posted @ 2018-01-24 16:17 菲菲菲菲菲常新的新手 阅读(210) 评论(0) 推荐(0)
摘要:查看字节码可以帮助我们更好的理解python的执行流程 查看字节码列表 1.查看模块中所有函数和所有类中的函数生成的字节码: import dis,targetdis.dis(target) 2.查看模块中某函数或类中某函数生成的字节码: import dis,targetdis.dis(targe 阅读全文
posted @ 2018-01-24 15:08 菲菲菲菲菲常新的新手 阅读(1385) 评论(0) 推荐(0)
摘要:什么是可散列的数据类型 如果一个对象是可散列的,那么在这个对象的生命周期中,他的散列值是不变的,而且这个对象需要实现__hash__()方法。另外可散列对象还要有__qe__()方法。这样才能跟其他键做比较。如果两个可散列对象是相等的。那么他们的散列值一定是一样的。 原子不可变数据类型(str, b 阅读全文
posted @ 2018-01-24 14:59 菲菲菲菲菲常新的新手 阅读(235) 评论(0) 推荐(0)