文章分类 -  Python 学习之路

摘要:Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。(第一层对象不变,第二层元素会变)2. copy.deepcopy 深拷贝 拷贝对象及其子对象。(第一层,第二层元素都不会变) 阅读全文
posted @ 2017-01-16 11:41 Vincen_shen 阅读(105) 评论(0) 推荐(0)
摘要:Python 提供了必要的函数和方法进行默认情况下的文件基本操作。你可以用 file 对象做大部分的文件操作。 open 函数 你必须先用Python内置的open()函数打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写。 语法: file object = open(file_n 阅读全文
posted @ 2017-01-08 01:56 Vincen_shen 阅读(136) 评论(0) 推荐(0)
摘要:Python if条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。 Python 编程中 if 语句 阅读全文
posted @ 2017-01-08 01:54 Vincen_shen 阅读(497) 评论(0) 推荐(0)
摘要:pyftpdlib api >>> http://blog.csdn.net/shadowflow/article/details/51308694 简单使用代码 阅读全文
posted @ 2017-01-01 19:05 Vincen_shen 阅读(285) 评论(0) 推荐(0)
摘要:转载:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014320129740415df73bf8f81e478982bf4d5c8aa3817a000 Web框架把我们从WSGI 阅读全文
posted @ 2016-12-28 18:07 Vincen_shen 阅读(211) 评论(0) 推荐(0)
摘要:转载:http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432012745805707cb9f00a484d968c72dbb7cfc90b91000 了解了前面WSGI框架,我 阅读全文
posted @ 2016-12-28 13:12 Vincen_shen 阅读(216) 评论(0) 推荐(0)
摘要:我们其实就明白了一个Web应用的本质就是: 浏览器发送一个HTTP请求; 服务器收到请求,生成一个HTML文档; 服务器把HTML文档作为HTTP响应的Body发送给浏览器; 浏览器收到HTTP响应,从HTTP Body取出HTML文档并显示。 所以,最简单的Web应用就是先把HTML用文件保存好, 阅读全文
posted @ 2016-12-27 22:56 Vincen_shen 阅读(166) 评论(0) 推荐(0)
摘要:在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。 Python的multiprocessing模块不但支持多进程,其中managers子模块还支持把多进程分布到多台机器 阅读全文
posted @ 2016-12-25 00:30 Vincen_shen 阅读(146) 评论(0) 推荐(0)
摘要:在多线程环境下,每个线程都有自己的数据。一个线程使用自己的局部变量比使用全局变量好,因为局部变量只有线程自己能看见,不会影响其他线程,而全局变量的修改必须加锁(GIL) 每个函数一层一层调用都这么传参数那还得了?用全局变量?也不行,因为每个线程处理不同的Student对象,不能共享。 如果用一个全局 阅读全文
posted @ 2016-12-24 22:43 Vincen_shen 阅读(143) 评论(0) 推荐(0)
摘要:SocketServer socketserver是标准库中一个高级别的模块,用于简化网络客户与服务器的实现。 在Python3中,本模块为socketserver模块。在Python 2中,本模块为SocketServer模块。所以在用import导入时,要分情况导入,否则会报错。导入的代码如下: 阅读全文
posted @ 2016-12-20 10:32 Vincen_shen 阅读(214) 评论(0) 推荐(0)
摘要:Python 提供了两个基本的 Socket 模块。 第一个是 Socket,它提供了标准的 BSD Sockets API。 第二个是 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。 下面讲的是Socket模块功能 1、Socket 类型 套接字格式: socket( 阅读全文
posted @ 2016-12-17 21:28 Vincen_shen 阅读(139) 评论(0) 推荐(0)
摘要:闭包(closure) 前戏-普通函数: 函数是一个对象,所以可以作为某个函数的返回结果(类似于decorator) 上面的代码可以成功运行。num_calculator将calculator对象返回赋给num。 闭包-引用外围作用域变量: 我们可以看到,calculator中引用了外围作用域变量a 阅读全文
posted @ 2016-12-14 22:30 Vincen_shen 阅读(330) 评论(0) 推荐(0)
摘要:装饰器 装饰器的原理就是利用《闭包函数》来实现,闭包函数的原理就是包含内层函数的return和外层环境变量。 装饰器本质上是一个Python函数,其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值(return)也是一个函数对象。 它经常用于有切面需求的场景,比如:插入日志、性能测试 阅读全文
posted @ 2016-12-14 15:45 Vincen_shen 阅读(208) 评论(0) 推荐(0)
摘要:coroutine python协程是什么? 协程就是一种用户态内的上下文切换技术,对应到Python语言,单进程的异步编程模型称为协程,有了协程的支持,就可以基于事件驱动编写高效的多任务程序。 我对协程的定义是:协程是在一个线程执行过程中可以在一个子程序的预定或者随机位置中断,然后转而执行别的子程 阅读全文
posted @ 2016-12-13 22:37 Vincen_shen 阅读(258) 评论(0) 推荐(0)
摘要:进程池 (Process Pool)可以创建多个进程。这些进程就像是随时待命的士兵,准备执行任务(程序)。一个进程池中可以容纳多个待命的士兵。 例1:五个进程同时wget 优酷主页 Pool运行的每个进程都执行f()函数。我们利用map()方法,将f()函数作用到表的每个元素上。这与built-in 阅读全文
posted @ 2016-12-12 16:55 Vincen_shen 阅读(646) 评论(0) 推荐(0)
摘要:multiprocessing包是Python中的多进程管理包。与threading.Thread类似,它可以利用multiprocessing.Process对象来创建一个进程。该进程可以运行在Python程序内部编写的函数。该Process对象与Thread对象的用法相同,也有start(), 阅读全文
posted @ 2016-12-12 14:44 Vincen_shen 阅读(304) 评论(0) 推荐(0)
摘要:>>> assert 1==1>>> assert 1==0Traceback (most recent call last):File "<stdin>", line 1, in <module>AssertionError 从上面的举例中可以基本了解了 assert 的特点。 assert,翻译 阅读全文
posted @ 2016-12-04 22:14 Vincen_shen 阅读(370) 评论(0) 推荐(0)
摘要:注: 建议使用 列表生成式 来取代map和filter; Python3中 map, filter, zip返回的是一个生成器,Python2中返回的是一个list. 示例1: 求平方 示例2: 取消空字符或None lambda 编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想 阅读全文
posted @ 2016-12-03 22:40 Vincen_shen 阅读(427) 评论(0) 推荐(0)
摘要:yield 但每当执行到一个 yield 语句就会中断,并返回一个迭代值。 yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是一个普通函数,Python 解释器会将其视为一个 generator! generator 对象具有 next() 方法。 当使用n 阅读全文
posted @ 2016-11-06 11:59 Vincen_shen 阅读(369) 评论(0) 推荐(0)
摘要:* 任何的数据类型都可以被当作参数传递给函数 例如:一个函数可以当作函数传入,一个类,等等.... * 任何的数据类型也都可以被函数return返回 在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。 举个例子,我们来计算阶乘n! = 1 x 2 x 3 x ... 阅读全文
posted @ 2016-11-03 17:37 Vincen_shen 阅读(180) 评论(0) 推荐(0)