随笔分类 -  Python学习笔记

主要是学习Python过程中一些笔记
摘要:1、time.time()获得的是一个时间戳,距离1970年以来多少秒 2、time.strftime(),按固定格式设置时间 结果如图 3、逻辑关系 例子: 4、datatime 结果如图 5、os模块 类似的sys模块 阅读全文
posted @ 2017-04-29 14:50 蜗牛仔 阅读(979) 评论(0) 推荐(0)
摘要:*args让函数可以接受不限制多个位置参数,**kwargs让函数可以接受不限制多个关键字参数,用法如图 2、迭代器总结 阅读全文
posted @ 2017-04-26 12:07 蜗牛仔 阅读(316) 评论(0) 推荐(0)
摘要:1、创建索引 2、索引名称 3、其他索引 4、explain 5、操作索引 6、高级特性 7、固定集合 8、导入导出 9、上锁 10、添加用户 11、主从复制 阅读全文
posted @ 2017-04-23 15:22 蜗牛仔 阅读(204) 评论(0) 推荐(0)
摘要:1、 2、 3、修改器 默认一条一条修改 4、 5、查询 6、mysql简单操作 阅读全文
posted @ 2017-04-21 19:57 蜗牛仔 阅读(225) 评论(0) 推荐(0)
摘要:1、缓冲区 4096是平台以及磁盘决定的 设置缓冲区,buffering=0是无缓冲,就是一有输入,即刻写进硬件 行缓冲 2、json操作 反向操作 json.load以及json.dump输入的参数是文件 3、操作excle表格 5、定义元类 6、节省内存 slots必须提前声明自身属性,不能添加 阅读全文
posted @ 2017-04-19 01:23 蜗牛仔 阅读(272) 评论(0) 推荐(0)
摘要:1、列表,字典,集合解析 2、为元组命名 执行结果如图 3、统计序列中元素出现频度 结果如图 词频统计 4、根据字典中值的大小,对字典中的项进行排序 结果如图 5、如何快速找到多个字典里面的公共键 结果如图 第二种方法 6,、如何让字典有序 结果如图 7、拆分含有多个分隔符的字符串 第二种方法 结果 阅读全文
posted @ 2017-04-19 00:14 蜗牛仔 阅读(320) 评论(0) 推荐(0)
摘要:如果熟悉jquery,那么使用pyquery进行网页信息提取将会是非常方便的,因为语法都是一样的 1、字符串初始化 2、url和文件初始化 3、CSS选择器 4、子元素 5、父元素 6、兄弟节点 7、遍历元素 8、获取属性 9、获取文本,这里跟beautifulsoup一样 10、获取html 11 阅读全文
posted @ 2017-04-14 13:57 蜗牛仔 阅读(251) 评论(0) 推荐(0)
摘要:1、结果如图所示,这里将html页面与网站的请求处理放在不同地方了 start.py代码 home.py里面的代码 home文件里面的index.html代码 运行结果如图 最后我们修改一下home里面的代码,实现选择页面功能 对于index.html文件也要做少少修改 最后把home里面的代码封装 阅读全文
posted @ 2017-03-31 20:15 蜗牛仔 阅读(961) 评论(0) 推荐(0)
摘要:Python web框架 1、简单概念 tornado socket、逻辑处理 Django flask 逻辑处理 第三方处理模块(包含了socket) jinja2模块 Models 数据库处理 Views 模板HTML文件 Controllers 业务逻辑(根据访问的URL不同,调用不同函数) 阅读全文
posted @ 2017-03-30 14:31 蜗牛仔 阅读(7513) 评论(0) 推荐(0)
摘要:1、Python里面一般用gevent实现协程协程, 而协程就是在等待的时候切换去做别的操作,相当于将一个线程分块,充分利用资源 (1)低级版协程的实现 结果如图 这里属于手动切换 (2)高级版协程 执行结果如图 阅读全文
posted @ 2017-03-03 00:48 蜗牛仔 阅读(4208) 评论(0) 推荐(0)
摘要:1、利用queue和threading模块可以实现多个版本的线程池,这里先贴上一个简单的 但是这个版本是一开始就创建了所有出线程池,浪费内存,线程也没有重复利用,下面的代理池解决了这个问题,有需要才创建,且重复利用空闲线程 2、高级版线程池 执行结果如图 阅读全文
posted @ 2017-03-02 14:15 蜗牛仔 阅读(485) 评论(0) 推荐(0)
摘要:这里的结果是直接打印出end就结束了,因为添加了t.daemon=True,join方法在进程里面也可以用,跟线程的用法非常相似 2、进程之间默认是不能共用内存的 结果如图 如果将代码改成threading,由于线程共用内存,所以结果是不一样的,线程操作列表li之前,拿到的是前一个线程操作过的li列 阅读全文
posted @ 2017-03-01 16:25 蜗牛仔 阅读(23333) 评论(0) 推荐(3)
摘要:queue是第一个队列模块,元素先进先出,取了就没有了这里用queue模块实现简单的消费生产者模型queue就是队列,是线程安全的,只能一边拿一边加元素进去 import queue import threading message = queue.Queue(10) def produce(i):#生产者 #while True: msg = message.put(i... 阅读全文
posted @ 2017-03-01 12:16 蜗牛仔 阅读(1204) 评论(0) 推荐(0)
摘要:1、threading模块是Python里面常用的线程模块,多线程处理任务对于提升效率非常重要,先说一下线程和进程的各种区别,如图 概括起来就是 2、threading模块可以创建多个线程,不过由于GIL锁的存在,Python在多线程里面其实是快速切换,下面代码是创建线程的简单体验 在线程里面set 阅读全文
posted @ 2017-02-28 23:52 蜗牛仔 阅读(85062) 评论(1) 推荐(1)
摘要:客户端的代码都是一样的,就差个端口 执行结果:只要启动服务器端,然后不同的客户端多次启动都能收到信息,多个端口成功被监听 2、下面使用select模块实现多路复用,使同一个端口同时接收多个链接 启动这个服务端之后,就可以实现多路复用了,可以接收多个客户端同时连接 3、下面介绍一些多路操作里面的读写分 阅读全文
posted @ 2017-02-28 00:52 蜗牛仔 阅读(2372) 评论(0) 推荐(0)
摘要:socketserver这个模块是利用IO多路复用以及多线程实现并发的,可以让服务器同时建立多个链接 原理如图 我们这样更改服务器代码 结果如图, 两个人同时链接没有问题 阅读全文
posted @ 2017-02-27 02:39 蜗牛仔 阅读(2117) 评论(0) 推荐(0)
摘要:(1)利用socket进行简单的链接 Python里面的socket支持UDP、TCP、以及进程间的通信,socket可以把我们想要发送的东西封装起来,发送过去,然后反解成原来的样子,事实上网路通信可以理解成都是建立在socket之上,下面的代码是演示利用socket进行简单的链接 下面是客户端代码 阅读全文
posted @ 2017-02-26 00:06 蜗牛仔 阅读(334) 评论(0) 推荐(0)
摘要:单例模式就是告诉你,只有一个对象 (1)单例模式不适用的场景 (2)当所有实例中封装的数据相同时,就可以使用单例模式,例如 还有一个经典的使用场景,机器之间数据库的链接 下面对这种单例模式进行探讨,假设创建一个连接池 这样个人每次在操作的时候都是一个单例模式,用一个实例进行链接,但是如果多个人同事打 阅读全文
posted @ 2017-02-24 22:08 蜗牛仔 阅读(322) 评论(0) 推荐(0)
摘要:(1)通过try可以避免简单的错误 结果如图 except后面输入的是捕捉的异常类型,输入的如果不是触发的错误类型,代码还是会报错的,例如这里出发的是ValueError,如果输入了IndexError,如图 如果在except后面输入ValueError的话就能准确抓到异常了,也就是指定的错误要根 阅读全文
posted @ 2017-02-24 18:26 蜗牛仔 阅读(363) 评论(0) 推荐(0)
摘要:Python面向对象里面有很多特殊方法,例如__init__(构造方法),__del__(析构方法),这些方法对于面向对象编程非常重要,下面列出一些常用的特殊方法 (1)__call__ 结果如图 (2)__getitem__ 、__setitem__、__delitem__ 执行结果如图 如果是切 阅读全文
posted @ 2017-02-24 14:36 蜗牛仔 阅读(233) 评论(0) 推荐(0)