摘要: 1、可迭代对象与迭代器的区别 可迭代对象:指的是具备可迭代的能力,即enumerable. 在Python中指的是可以通过for-in 语句去逐个访问元素的一些对象,比如元组tuple,列表list,字符串string,文件对象file 等。 迭代器:指的是通过另一种方式去一个一个访问可迭代对象中的 阅读全文
posted @ 2018-10-17 13:40 petrolero 阅读(1974) 评论(0) 推荐(0) 编辑
摘要: 一、模块单例 Python 的模块就是天然的单例模式,因为模块在第一次导入时,会生成 .pyc 文件,当第二次导入时,就会直接加载 .pyc 文件,而不会再次执行模块代码。 #foo1.py class Singleton(object): def foo(self): pass singleton 阅读全文
posted @ 2018-10-16 21:08 petrolero 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 对编程语言比较熟悉的朋友,应该知道“反射”这个机制。Python作为一门动态语言,当然不会缺少这一重要功能。然而,在网络上却很少见到有详细或者深刻的剖析论文。下面结合一个web路由的实例来阐述python的反射机制的使用场景和核心本质。 一、前言 在上面的代码中,我们必须区分两个概念,f1和“f1" 阅读全文
posted @ 2018-10-16 20:26 petrolero 阅读(2974) 评论(0) 推荐(0) 编辑
摘要: 1. __doc__ 描述类的信息 显示的结果: 2. __call__ 对象后面加括号,触发执行 显示的结果: 3. __dict__ 查看类或对象中的所有成员 显示的结果: {'__weakref__': <attribute '__weakref__' of 'Foo' objects>, ' 阅读全文
posted @ 2018-10-16 14:34 petrolero 阅读(563) 评论(0) 推荐(0) 编辑
摘要: os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。 os 常用方法 os.remove(‘path/filename’) 删除文件 os.rename(oldname, newna 阅读全文
posted @ 2018-10-15 21:46 petrolero 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 请大家跟我理解一下,如果在一个函数的内部定义了另一个函数,外部的我们叫他外函数,内部的我们叫他内函数。 闭包: 在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用。这样就构成了一个闭包。 一般情况下,在我们认知当中,如果一个函数结束,函数的内部所有东西都 阅读全文
posted @ 2018-10-15 21:40 petrolero 阅读(4077) 评论(0) 推荐(0) 编辑
摘要: 1.Python的可变类型和不可变类型? 可变类型:list、dict(列表和字典) 不可变类型:数字、字符串、元组 2.求结果: 3.求结果: 你将如何修改 multipliers 的定义来产生期望的结果 答案 以上代码的输出是 [6, 6, 6, 6] (而不是 [0, 2, 4, 6])。 这 阅读全文
posted @ 2018-10-14 22:44 petrolero 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 一、python中的logging模块 logging模块定义的函数和类为应用程序和库的开发实现了一个灵活的事件日志系统。logging模块是Python的一个标准库模块,由标准库模块提供日志记录API的关键好处是所有Python模块都可以使用这个日志记录功能。所以,你的应用日志可以将你自己的日志信 阅读全文
posted @ 2018-10-14 21:33 petrolero 阅读(2294) 评论(0) 推荐(0) 编辑
摘要: Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”(mark and sweep)解决容器对象可能产生的循环引用的问题。通过“分代回收”(generation collection)以空间换取时间来进一步 阅读全文
posted @ 2018-10-14 17:42 petrolero 阅读(374) 评论(0) 推荐(0) 编辑
摘要: 27.简述Python的深浅拷贝以及应用场景? 深浅拷贝的原理 深浅拷贝用法来自copy模块。 导入模块:import copy 浅拷贝:copy.copy 深拷贝:copy.deepcopy 字面理解:浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝指拷贝数据集合的所有层。所以对于只有一层的数据集合来 阅读全文
posted @ 2018-10-14 17:29 petrolero 阅读(192) 评论(0) 推荐(0) 编辑