PYTHON-COOKBOOK文章目录PYTHON-COOKBOOK一:数据结构和算法1、Heapq取出最大或最小的几个元素优先级队列2、字典多值字典字典排序字典列表排序字典共同点和不同点3、collections保留最后几个元素频率统计命名元组字典(映射)联合查找4、其他解压赋值去重且保持顺序切片分组一:数据结构和算法三个基本的写法:列表生成式字典生成式迭代器生成式1、Heapq取出最大或最小的几个元素#最大或者最小的n个元素importrandomfr
系统 2019-09-27 17:46:20 2171
Linux中进程的通信方式有信号,管道,共享内存,消息队列socket等。其中管道是*nix系统进程间通信的最古老形式,所有*nix都提供这种通信方式。管道是一种半双工的通信机制,也就是说,它只能一端用来读,另外一端用来写;另外,管道只能用来在具有公共祖先的两个进程之间通信。管道通信遵循先进先出的原理,并且数据只能被读取一次,当此段数据被读取后,马上会从数据中消失,这一点很重要。Linux上,创建管道使用pipe函数,当它执行后,会产生两个文件描述符,分别
系统 2019-09-27 17:45:56 2171
Python自1.5版本起增加了re模块,它提供Perl风格的正则表达式模式。Python1.5之前版本则是通过regex模块提供Emacs风格的模式。Emacs风格模式可读性稍差些,而且功能也不强,因此编写新代码时尽量不要再使用regex模块,当然偶尔你还是可能在老代码里发现其踪影。1.正则表达式基础1.1.简单介绍正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自
系统 2019-09-27 17:45:50 2171
前言本文讨论Python的for…else和while…else等语法,这些是Python中最不常用、最为误解的语法特性之一。Python中的for、while等循环都有一个可选的else分支(类似if语句和try语句那样),在循环迭代正常完成之后执行。换句话说,如果我们不是以除正常方式以外的其他任意方式退出循环,那么else分支将被执行。也就是在循环体内没有break语句、没有return语句,或者没有异常出现。下面我们来看看详细的使用实例。一、常规的i
系统 2019-09-27 17:38:06 2171
前言关于python爬虫目前有两个主流的库一个是urllib和requests在python3中urllib2已经没有了,取而代之的是urllib.request。这里的话我将首先介绍urllib.request的使用。之后我再介绍request,我本人是打算做一个系列的爬虫教程不仅仅包括入门还有实战进阶所以我希望浏览我写的博客时可以按顺序浏览学习。那么废话不多说奉上名言成功没有偶然。即便有些胜利者谦虚地说,自己的成功是偶然的缘故。——尼采开始正片!!!u
系统 2019-09-27 17:57:27 2170
准备工作:到企业微信官网,注册一个企业;登录企业微信后台,创建一个“自建”应用,获取企业ID、agentid、secret这3个必要的参数;在企业微信的通讯录中,创建多个测试账号;在手机端安装“企业微信”APP,使用测试账号登录到企业微信,准备接收消息。程序代码:企业微信提供API开发接口,通过HTTPS的GET、POST方法与企业微信后台进行交互,完成获取令牌、发送数据、获取数据的操作。Python代码主要使用requests库,将企业微信API进行简单
系统 2019-09-27 17:56:30 2170
看知乎的时候发现了一个“如何正确地吐槽”收藏夹,里面的一些神回复实在很搞笑,但是一页一页地看又有点麻烦,而且每次都要打开网页,于是想如果全部爬下来到一个文件里面,是不是看起来很爽,并且随时可以看到全部的,于是就开始动手了。工具1.Python2.72.BeautifulSoup分析网页我们先来看看知乎上该网页的情况:网址:,容易看到,网址是有规律的,page慢慢递增,这样就能够实现全部爬取了。再来看一下我们要爬取的内容:我们要爬取两个内容:问题和回答,回答
系统 2019-09-27 17:53:39 2170
来源|Python语音识别作者|深度学习与python(ID:PythonDC)Python是目前编程领域最受欢迎的语言。在本文中,我将总结Python面试中最常见的100个问题。每道题都提供参考答案,希望能够帮助你在2019年求职面试中脱颖而出,找到一份高薪工作。这100道面试题涉及Python基础知识、Python编程、数据分析以及Python函数库等多个方面。前50道面试题:Q51、python中编译和链接过程?编译和链接允许正确编译新扩展而不会出现
系统 2019-09-27 17:52:55 2170
python接入片云网短信验证申请自己的签名和模板签名和模板审核失败,就联系客服,客服会帮你通过在你的系统设置里面IP白名单,填写你的服务器ip这个ip直接取浏览器搜索ip查看接入python的相关代码importrequestsimportjsonclassYunPian(object):def__init__(self,api_key):self.api_key=api_keyself.single_send_url="https://sms.yunp
系统 2019-09-27 17:51:19 2170
文件操作是开发中经常遇到的场景,那么如何判断一个对象是文件对象呢?下面我们总结了3种常见的方法。方法1:比较类型第一种方法,就是判断对象的type是否为file>>>fp=open(r"/tmp/pythontab.com")>>>type(fp)>>>type(fp)==fileTrue注意:该方法对于从file继承而来的子类不适用,看下面的实例classfileDetect(file):pass#中间代码无所谓,直接跳过不处理fp2=fileDetec
系统 2019-09-27 17:49:34 2170
目录基础:1,安装2,交互器3,算法(+—*/)4,数字表达式5函数:序列,列表和元组1,索引:【】2,分片:【1:3】(1~3提取)【1:】3,序列:4,断言:true/false5,长度,最小值,最大值(Len,min,max)基础:1,安装2,交互器3,算法(+—*/)4,数字表达式16进制0Xafter8进制0100模块导入:import.Xx后可以调研韩式和类5函数:Abs(number)返回绝对值Float(object)将字符串转浮点数Int
系统 2019-09-27 17:49:03 2170
1、先来看一个函数:defsum(x,y):returnx+y用lambda来实现:p=lambdax,y:x+yprint(p(1,2))2、传入一个参数的lambda函数a=lambdax:x*xprint(a(2))#注意:这里直接a(2)可以执行,但没有输出的,因为没有print3、多个参数的lambda形式:a=lambdax,y,z:x*y*zprint(a(5,6,7))匿名函数lambda:是指一类无需定义标识符(函数名)的函数或子程序。l
系统 2019-09-27 17:48:43 2170
问题背景从许多中文的参考文献上,rstrip()函数的功能被简单描述为:删除字符串末尾的指定字符(默认为空格),我的理解是,直接去掉末尾指定的字符序列,如我传入的是d,则会去掉末尾的字符d(如果存在),如果传入了字符ad,则去掉末尾的字符ad(如果存在),直到我们开发的服务遇到了一个非常奇怪的bug之后,下面是奇怪问题的复现过程:>>>s='hello_world'>>>s.rstrip('d')#去除末尾的字符d'hello_worl'>>>>>>s.r
系统 2019-09-27 17:46:47 2170
#计算器#首先得到一个字符串#去空格#没有空格的字符串#先算最里层括号里的:找括号,且括号里没有其他括号#得到了一个没有括号的表达式:只有加减乘除#从左到右先找到第一个乘除法:#循环#乘除法第一个数的符号是不必匹配的#找到乘除法如何计算呢:#先判断是乘法还是除法#如果是乘法就以‘*’分割得到的内容是字符串数据类型的数#如果是除法就用'/'分割的内容是字符串数据类型的数#转数据类型之后根据'*','/'计算结果#结果替换原来字符串中的内容#所有的乘除法都做完
系统 2019-09-27 17:57:17 2169
前言:不管是在做接口自动化还是在做UI自动化,测试人员遇到的第一个问题都是卡在登录上。那是因为在执行登录的时候,服务端会有一种叫做session的会话机制。一个很简单的例子:在做功能测试的时候,肯定会遇到一种测试场景,需要在没登录的时候进行一些普通操作,会提示“请先登录”比如:我们在逛TB的时候,如果没有登录,那么当你搜索到一个商品,准备下单时候,是不是就会弹出一个登录框?其实这就是利用到了session会话机制。因为HTTP协议是无状态的,那么在下订单,
系统 2019-09-27 17:56:50 2169