![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
榨菜rose
这个作者很懒,什么都没留下…
展开
-
asyncio 简单的原理实现(用同步的方式理解异步)
在理解asyncio异步模块之前,需要理解yield的使用方法,贴一个例子:def test(): data = yield "hello" return datat = test()res = t.send(None)print(res)try: t.send('world')except StopIteration as e: print(e.value)例子说明:当生成器首次调用send的方法的时候(参数必须是None),test的函数分成了两部分原创 2021-06-22 14:05:17 · 571 阅读 · 1 评论 -
I/O 多路复用
首先这里只讲I/O多路复用中的epoll的用法,目的是为后续使用asyncio提前声明一些理论支撑。对于一个I/O操作而言,它会涉及到两个系统对象,一个是调用这个IO的process (or thread),另一个就是系统内核(kernel)。当一个read/recv读数据的操作发生时,该操作会经历两个阶段:1)等待数据准备 (Waiting for the data to be ready)2)将数据从内核拷贝到进程中(Copying the data from the kernel to the原创 2021-06-19 23:27:37 · 120 阅读 · 0 评论 -
python实现链表与反转
链表记录了头节点与尾节点,是为了方便末尾添加时,不在遍历链表而设置的。反转的思想是设置一个前驱节点为None,首节点指向Node,下一个节点指向前一个节点即可。class Node(object): def __init__(self, data=None, next=None): self.data = data self.next = next def __str__(self): return f'<Node:{self.dat原创 2021-02-05 01:09:57 · 199 阅读 · 0 评论 -
多级dict转json
递归规范字典数据类型,转json进行储存或是传输,代码如下:def dict2json(data): def norm(data) """ 标准化输入的数据格式 """ if isinstance(data, collections.OrderedDict): data = dict(data) if isinstance(data, list): for i, li in enumerate(data): d原创 2021-01-17 17:50:35 · 380 阅读 · 0 评论 -
pip 下载与离线安装模块包
1.导出项目所有模块包pip freeze > requirements.txt2.下载模块包pip download -d ./test -r requirements.txt3.离线安装pip install --no-index --find-links=./test -r requirement.txt```原创 2021-01-15 21:56:30 · 644 阅读 · 1 评论 -
python 导包相对路径与项目打包wheel
今天想将自己的代码打包成一个wheel文件,然后pip安装一键搞定的事情。遇到了相对导包的问题。要彻底地解决这个问题需要重新认识一下python关于模块与包的相关概念。一、什么是模块?一个py文件就是一个模块二、什么是包:多个模块放在一个目录下,并且存在一个__init__.py文件的目录就是一个模块。首先构建一个测试的项目,目录结构如下:代码如下:# hello.__init__.pyprint('__package__={} | __file__={} | __name__={} '.原创 2021-01-14 18:49:44 · 1298 阅读 · 0 评论