- 军军小站|张军博客
搜索到与相关的文章
Python

python 并发编程 非阻塞IO模型原理解析

非阻塞IO(non-blockingIO)Linux下,可以通过设置socket使其变为non-blocking。当对一个non-blockingsocket执行读操作时,流程是这个样子:从图中可以看出,当用户进程发出read操作时,如果kernel中的数据还没有准备好,那么它并不会block用户进程,而是立刻返回一个error。从用户进程角度讲,它发起一个read操作后,并不需要等待,而是马上就得到了一个结果。用户进程判断结果是一个error时,它就知道

系统 2019-09-27 17:53:07 1904

Python

简单了解python的一些位运算技巧

前言位运算的性能大家想必是清楚的,效率绝对高。相信爱好源码的同学,在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢?想必最大的原因,是较为难懂。不过,在面试的过程中,在手写代码过程中,写出一两个位运算的代码,还会让面试官眼前一亮的。位运算常用的运算符包括&(按位与),|(按位或),~(按位非),^(按位异或),<<(有符号左移位),>>(有符号右移位)。下面用几个例子说明其应用,希望对你有所启发。1、判断奇数还是偶数通常判

系统 2019-09-27 17:53:07 1904

Python

Python机器学习之数据探索可视化库yellowbrick-tutorial

背景介绍从学sklearn时,除了算法的坎要过,还得学习matplotlib可视化,对我的实践应用而言,可视化更重要一些,然而matplotlib的易用性和美观性确实不敢恭维。陆续使用过plotly、seaborn,最终定格在了Bokeh,因为它可以与Flask完美的结合,数据看板的开发难度降低了很多。前阵子看到这个库可以较为便捷的实现数据探索,今天得空打算学习一下。原本访问的是英文文档,结果发现已经有人在做汉化,虽然看起来也像是谷歌翻译的,本着拿来主义,

系统 2019-09-27 17:52:29 1904

Python

python--使用两个栈实现队列

问题:用两个栈来实现一个队列,完成队列的Push和Pop操作。分析:栈的特性是“先进后出”,队列为“先进先出”。思路:入队:直接把新元素压入stack1即可。出队:根据队列先进先出的性质,由于先进入队列的元素被压倒stack1的栈底,要想实现先入队列的先出队,需要将stack1中的元素逐个弹出并压入stack2,经过弹出和压入之后最先进入的元素就处于stack2的栈顶,有可以直接弹出。python实现代码:classSolution:def__init__

系统 2019-09-27 17:52:27 1904

Python

排序算法总结(Python实现)——(一)

整个排序算法分两部分来总结,这篇总结第一部分一些相对简单和常用的排序算法,包括冒泡排序、选择排序、插入排序和希尔排序。冒泡排序冒泡排序应该是大家接触的最早的排序方法了,理解起来也十分简单。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。算法描述比较相邻的

系统 2019-09-27 17:52:14 1904

Python

python学习笔记——循环

for我们先来看一下for语句的格式:foriinrange(0,5):print(i)其中range相当于一个迭代器。我们可以这么尝试:print(list(range(0,5)))输出很简单了,就是01234当然了这里的迭代器可以用自己的list比如:cgg=["cgg","cgg1","cgg2"]foriincgg:print(i)输出结果就是三个字符串以此输出。while循环语句当然少不了while了先来看看while的格式:whilecgg<1

系统 2019-09-27 17:51:52 1904

Python

12个步骤教你理解Python装饰器

前言或许你已经用过装饰器,它的使用方式非常简单但理解起来困难(其实真正理解的也很简单),想要理解装饰器,你需要懂点函数式编程的概念,python函数的定义以及函数调用的语法规则等,虽然我没法把装饰器变得简单,但是我希望可以通过下面的步骤让你由浅入深明白装饰器是什么。假定你拥有最基本的Python知识,本文阐述的东西可能对那些在工作中经常接触Python的人有很大的帮助。1、函数(Functions)在Python里,函数是用def关键字后跟一个函数名称和一

系统 2019-09-27 17:51:47 1904

Python

Appium+python自动化(三十四)- 有图有真相,很美很精彩 - 屏幕

简介在实际自动化项目运行过程中,很多时候App可以会出现各种异常,为了更好的定位问题,除了捕捉日志我们还需要对运行时的设备状态来进行截屏。从而达到一种“有图有真相”的效果。截图方法方法1save_screenshot()该方法直接保存当前屏幕截图到当前脚本所在文件位置。driver.save_screenshot('login.png')查看方法1源码:方法2get_screenshot_as_file(self,filename)将截图保留到指定文件路径

系统 2019-09-27 17:51:40 1904

Python

Python面试:算法面试中的趣味题—附答案纯分享

这里给大家分享几个面试时遇到的趣味性比较浓厚的题目,答案呢也是个人的理解,不足的地方,还望大家指出!1、25匹马,有一条只能5匹马比赛的赛道,我们无法计时,只能看到马的排名,如何用最短的次数找出跑的最快的5匹马?这道题目的话最好的情况是7次,最坏的情况是10次。我们首先建立一个表格,先把25匹马分为如下的五组:每组进行比赛,假设第一组快慢顺序为A1、A2、A3、A4和A5,第二组依次类推。那么各组的第一分别是A1、B1、C1、D1、E1。在最好的情况下,先

系统 2019-09-27 17:50:54 1904

Python

用Python分析淘宝2000款避孕套,得出这些有趣的结论

到现在为止,我们的淘宝教程已经写到了第四篇,前三篇分别是:第一篇:Python模拟登录淘宝,详细讲解如何使用requests库登录淘宝pc端。第二篇:淘宝自动登录2.0,新增Cookies序列化,教大家如何将cookies保存起来。第三篇:Python爬取淘宝商品避孕套,教大家如何爬取淘宝pc端商品信息。今天,我们来看看淘宝系列的第四篇我们在上一篇的时候已经将淘宝数据爬取下来了,但是并没有做数据分析。所以今天这篇文章就是教大家如何去分析数据,得出一些有用的

系统 2019-09-27 17:50:12 1904