07 2019 档案

Python 栈(stack)
摘要:Python 栈(stack) 栈(stack)又名堆栈,它是一种运算受限的线性表 栈只能在一端进行插入和删除操作,它按照先进后出(FILO)的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶 栈也可以看成是 [FILO 的队列 0: if stack.gettop() == check_di 阅读全文

posted @ 2019-07-31 17:33 doubtful 阅读(39559) 评论(0) 推荐(1)

Python 基础排序算法
摘要:冒泡排序(bubble sort) 思路 以升序为例: 从第一个数开始向后两两对比,将大的数一直向后移动,直至最大的数移到最后,再找第二大的数 最好情况:O(n) 一般情况:O(n^2) 最坏情况:O(n^2) 代码 选择排序(selection sort) 思路 以升序为例: 从第一个位置开始向后 阅读全文

posted @ 2019-07-18 18:27 doubtful 阅读(373) 评论(0) 推荐(0)

Redis Pipelining
摘要:Redis是一种基于客户端 服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤: 客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。 服务端处理命令,并将结果返回给客户端。 [Redis 官方文档:https://redis.i 阅读全文

posted @ 2019-07-11 15:21 doubtful 阅读(249) 评论(0) 推荐(0)

Python RabbitMQ
摘要:RabbitMQ RabbitMQ是实现了 AMQP 的开源消息代理软件(亦称面向消息的中间件),实现程序间通信 AMQP(Advanced Message Queuing Protocol 高级消息队列协议) 是应用层协议的一个开放标准,为面向消息的中间件设计 [RabbitMQ 官网:https 阅读全文

posted @ 2019-07-09 13:48 doubtful 阅读(286) 评论(0) 推荐(0)

IO 模式
摘要:#IO 模式 对于 Linux 的 network IO: 一次 IO 访问(以read举例),数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区 copy 到应用程序的地址空间。所以说,当一个 read 操作发生时,它会经历两个阶段: 等待数据准备 (Waiting for t 阅读全文

posted @ 2019-07-08 09:31 doubtful 阅读(526) 评论(0) 推荐(0)

Python selectors
摘要:selectors 封装了 select 和 epoll,默认使用 epoll,如果无法使用 epoll 就换成 select select 和 epoll 为 [IO多路复用的方式 :"), encoding="utf8") s.sendall(msg) data = s.recv(1024) p 阅读全文

posted @ 2019-07-08 09:29 doubtful 阅读(342) 评论(0) 推荐(0)

Python 协程 (Coroutine)
摘要:协程 (Coroutine) 什么是协程 协程(微线程)是比线程更轻量化的存在,像一个进程可以拥有多个线程一样,一个线程也可以拥有多个协程 最重要的是,协程不是被操作系统内核所管理,而完全是由程序所控制 如何判断 必须在只有一个单线程里实现并发 修改共享数据不需加锁 用户程序里自己保存多个控制流的上 阅读全文

posted @ 2019-07-06 17:09 doubtful 阅读(3566) 评论(0) 推荐(0)

Python thread & process
摘要:线程 [点击查看 阅读全文

posted @ 2019-07-03 16:05 doubtful 阅读(288) 评论(0) 推荐(0)

Python process (进程)
摘要:进程 (process) 进程是对各种资源管理的集合,包含对各种资源的调用、内存的管理、网络接口的调用 进程要操作 CPU 必须先启动一个线程,启动一个进程的时候会自动创建一个线程,进程里的第一个线程就是主线程 程序执行的实例 有唯一的进程标识符(pid) multiprossing 模块 启动进程 阅读全文

posted @ 2019-07-03 15:59 doubtful 阅读(15679) 评论(0) 推荐(0)

Python thread (线程)
摘要:线程 (thread) 操作系统最小的调度单位,是一串指令的集合 程序一开始就有一个主线程,新启动的线程和主线程之间互不影响,主线程启动子线程之后就相互独立(子线程也可以启动线程),无论子线程是否执行结束主线程都会继续执行,程序在所有线程执行结束后关闭 全局解释器锁 (GIL) 由于无法控制线程执行 阅读全文

posted @ 2019-07-03 15:56 doubtful 阅读(1425) 评论(0) 推荐(0)

Python queue (队列)
摘要:queue (队列) 主要作用 1. 解耦,使程序实现松耦合(一个模块修改不会影响其他模块) 2. 提高效率 队列与列表的关系 队列中数据只有一份,取出就没有了,区别于列表,列表数据取出只是复制了一份 分类 FIFO (先入先出) queue.Queue(maxsize=0) 示例: 输出结果: 1 阅读全文

posted @ 2019-07-02 09:47 doubtful 阅读(38093) 评论(3) 推荐(1)

Python paramiko 报错 paramiko.ssh_exception.SSHException: not a valid RSA private key file
摘要:报错的原因是选择的文件不是一个有效的 RSA 密钥文件 现在通过 默认生成的密钥文件是新的格式,并非 RSA 格式。打开文件可以看到是以 开头的,模块无法识别。 解决方法 生成时指定格式: 通过 命令生成 RSA 格式的密钥对 ssh keygen 参数 :参数指定密钥的格式,PEM(也就是 RSA 阅读全文

posted @ 2019-07-01 15:22 doubtful 阅读(6179) 评论(0) 推荐(0)

Python paramiko
摘要:Python 的 paramiko 模块基于 SSH 连接远程服务器并执行操作 SSHClient 基于用户名密码连接 示例: 如果 不使用 ,且 known_hosts 中没有主机信息就会报错: 基于密钥对连接 通过用户名密码连接有许多问题,可以通过公钥私钥连接 连接前需要提前生成密钥对 示例: 阅读全文

posted @ 2019-07-01 15:05 doubtful 阅读(442) 评论(0) 推荐(0)

导航