Python六剑客】的更多相关文章

六剑客 一行搞定六剑客:三个函数:map filter reduce + lambda 切片 推导列表 python最有特点的一行代码,所有代码均可以借用一行代码(目标) 1.map(函数,列表或者字符串)#字符串或者列表中每个字符或每个元素都带入函数运算 1.map函数: 输出结果为列表 1)列表元素的map运算, >>> map(s,[1,2,3]) [2, 3, 4] 2)字符串元素的map运算,函数用lambda实现 >>> map(lambda x:x.upp…
一:map():映射 map()有两个参数,一个函数,一个序列,序列中每一个元素都会做为参数传给前边的函数,然后生成新的列表, 第二个参数必须用一个序列:元祖,列表,字符串 >>> map(str,[1,2,3,4])['1', '2', '3', '4'] 也可以自己定义函数 搭配lambda函数 >>> map(lambda x:x.upper(),"abc")['A', 'B', 'C'] map()函数搭配lambda传多个参数  例子:2个…
统计一共有几个数字 s="sdfa45ads46723" #lambda >>> filter(lambda x:x.isdigit(),list(s)) ['4', '5', '4', '6', '7', '2', '3'] >>> len(filter(lambda x:x.isdigit(),list(s))) 7 >>> reduce(lambda x,y:x+y,map(lambda x:x.isdigit(),list(…
1.切片 切片:截取可迭代对象的部分内容(list,tuple,dict,set,str) 2.列表解析式 列表解析式可以快速的生成一个列表 不带if条件的: 格式:[expression for i in Iterable] >>> l = [x for x in range(10)]>>> l[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 带if条件的: >>> l = [x for x in range(10) if x%2==0]…
网络编程: 什么是网络编程? 网络:它是一种隐形的媒介:可以将多台计算机使用(将它们连接到一起) 网络编程:将多台计算机之间可以相互通信了(做数据交互) 一旦涉及到网络编程,划分为两个方向存在,一方我们称为客户端(cilent),一方我们称为服务端(server) 冲浪概念(上网),打开浏览器举例:访问百度页面 我们可以认为是浏览器的进程和百度服务器之间进行数据交互 IP: IP地址的作用: 如果我们需要上网,每台计算机都需要有一个唯一的识别号(标识),就需要用到ip的概念 [注意事项]: ip…
一.函数知识补充 函数不设置值,默认返回None:函数中参数都是按引用传递,函数里修改了参数,原始参数也会修改. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 li = [11, 22, 33, 44]   def f1(arg):       arg.append(55)   ret = f1(li)   print(ret)   # 执行结果: None   #把li重新赋值,f1函数没有设置返回值,默认返回None,所以结果应该是None…
一.跟实例创建和执行有关的 __new__.__init__.__call__. 类加括号调用了__init__方法来创建一个实例对象.这一过程分成了两步: 类调用__new__来创建实例对象,__new__调用__init__来初始化实例对象. class A: count = 0 def __init__(self): print("__init__ has called. 2") def __new__(cls): print("__new__ has called.…
一.认识函数 help(方法名字)  help(round) 1.功能性 2.隐藏细节 3.避免编写重复的代码 4.组织代码 自定义函数 二.函数的定义及运行特点 # 递归 def sum_num(num): if num ==1: return num return num + sum_num(num - 1) print(sum_num(100)) # 5050 import sys sys.setrecursionlimit(100)  设置最大的 递归数 <995   # 函数 def…
上篇简单学习了数学运算符,今天来学习下完整的Python运算符与表达式,具体看下面的表格吧! 表1 运算符与它们的用法 运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8.’a’ + ‘b’得到’ab’. – 减 得到负数或是一个数减去另一个数 -5.2得到一个负数.50 – 24得到26. * 乘 两个数相乘或是返回一个被重复若干次的字符串 2 * 3得到6.’la’ * 3得到’lalala’. ** 幂 返回x的y次幂 3 ** 4得到81(即3 * 3 * 3 * 3) /…
案例五:求两个列表元素的和,返回新列表lt1 = [1,2,3,4]lt2 = [5,6]效果:[6,8,10,12] lt1=[1,2,3,4] lt2=[5,6] print(list(map(lambda x,y:x+y,lt1,lt2))) 案例六:求字符串中每个单词的长度效果:[7,2,8]content = 'Welcome To ShangHai'#切割是关键,因为一切就是列表了,按照什么切呢?直接split()切 content='Welcome To ShangHai' wor…
1.数字整形 python3不管数字有多大都是int型,没有long类型 1>字符串转换为数字 s1 = " print(type(s1),s1) b = int(s1)#不加base默认转换为十进制 print(type(b),b) b += 1000 输出: <class 'str'> 123 <class 'int'> 123 s1 = " s2 = "a" print(type(s1),s1) b = int(s1,base=2…
持续集成 欢迎阅读WebDriver持续集成讲义.本篇讲义将会重点介绍Selenium WebDriver API的在持续集成中的使用方法,以及使用Jenkins持续集成工具进行自动化测试的设计. 持续集成的概念 持续集成的定义 持续集成,Continuous integration ,简称CI. 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火,如何能再不断变化的…
要想做爬虫,不可避免的要用到正则表达式,如果是简单的字符串处理,类似于split,substring等等就足够了,可是涉及到比较复杂的匹配,当然是正则的天下,不过正则好像好烦人的样子,那么如何做呢,熟记正则元字符和语法,找个在线匹配测试网站随时测试(其实在正则上我也是个菜逼...一直在慢(询)慢(问)测(大)试(牛)中得到正解),不过要相信,用熟了自然就巧了! 首先,推荐两篇博客,分别介绍了python自带的正则标准库re以及regex模块:Python正则表达式指南(re)     Pytho…
本节知识点: 操作对象: · click 点击对象 · send_keys 在对象上模拟按键输入 · clear 清除对象的内容,如果可以的话 WebElement  另一些常用方法: · text  获取该元素的文本 · submit  提交表单 · get_attribute  获得属性值 ====================================== 操作测试对象 前面讲到了不少知识都是定位元素,定位只是第一步,定位之后需要对这个原素进行操作. 鼠标点击呢还是键盘输入,这要取…
1.封装 支持多重继承,但如果不需要的时候最好不要使用,避免出现不必要的bug: 2.继承 3.多态 4.构造函数 5.私有和共有 在属性前写两个下滑线定义就是私有的…
1.string转数字 import  locale locale . atoi( str ) 2.创建函数 函数是可以调用(可能包含参数),执行某种行为并返回一个值 >>>import math >>>x=  1 >>>y =  math.sqrt >>>cllable( x ) false >>>callable( y ) True 使用def定义一个函数 def hello( name ): return '…
1.if声明 单 if 通过使用布尔运算符的声明 and , or 和 not. if-elif-else. elif即else if if expression1:      expr1_true_suite elif expression2:       expr2_true_suite else:       none_of_the_above_suite 2.while语句 while expression:      suite_to_repeat while语句有一个可选的else从…
1.1 概述: TCP协议通过三次握手协议将客户端与服务器端连接,两端使用各自的Socket对象.Socket对象中包含了IO流,供数据传输. 即:TCP协议在客户端与服务器端通过Socket组成了IO通道,数据在IO通道中传输,客户端传输的数据成队列方式写出,服务器端接收,同样服务器端传输的数据成队列方式写出,客户端接收. tcp协议的特点:面向连接.可靠(安全).效率慢 类似于我们生活中的打电话 举例:上网 --> 满足http协议(使用的还是tcp的还一套,因为http是tcp的子协议)…
1.1 概述 UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接.简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据,同样接收端在收到数据时,也不会向发送端反馈是否收到数据. 由于使用UDP协议消耗资源小,通信效率高,所以通常都会用于音频.视频和普通数据的传输例如视频会议都使用UDP协议,因为这种情况即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响. 但是在使用UDP协议传送数据时,由于UDP的面向无连接性,不能保证数据的完…
''' 封装Person类 ''' class Person: def __init__(self,name,age): self.name=name self.age=age def getAge(self): return self.age import unittest from person import Person ''' 对类(类中函数)进行单元测试: 可以测试类中所有的功能,所有步骤和之前函数的单元测试保持一致, 但是在调用assertEqual()函数之前必须先实例化一个当前类…
对函数(模块中的)进行函数测试定义两个需要被测试的函数: #求和函数 def mySum(x,y): return x+y #相减函数 def mySub(x,y): return x-y print(mySum(10,20)) #导入测试模块 import unittestimport unittest #导入需要被测试的函数from method import mySumfrom method import mySub 对函数(模块中的)进行单元测试:步骤一:需要先导入测试模块unittes…
总结:高阶函数以及匿名函数之间的配合使用 from functools import reduce #模块一:lambda和filter的结合使用 #lt = [1,2,3,4,5,6,7,8,9] --> [3,6,9]] lt = [1,2,3,4,5,6,7,8,9] print(list(filter(lambda x:x%3==0,lt))) #模块二:lambda和map的结合使用 #容器/序列对象:range对象 mo=map(lambda x:x**2,range(5)) pri…
1.lt = ['sdfasdfa', 'ewqrewrewqr', 'dsafa12312fdsafd', 'safsadf'] --> 得到长度列表2.tp = ('TOM', 'Lilei', 'JAck', ‘HanmeiMeI’) --> 得到列表(所有元素的首字母大写)3.lt1 = [1,2,3,4]lt2 = [5,6,7,8]计算得到:lt1[0]lt2[0] + lt1[1]lt2[1] + ... 15 + 26 +最终得到累加以后的值 from functools im…
转载 https://www.cnblogs.com/tkqasn/p/5977653.html…
演示sorted函数的使用,以及和sort的区别:我们将sorted和sort进行一番比较:相同点:它们都是来实现排序的操作(功能层面)不同点:列表中的sort函数,它执行完毕后会直接影响原本这个list的内部结构(内部的数据发生改变了):而内置函数sorted函数,它执行完毕后不会影响原本容器中的内部结构,而会返回一个新的列表给程序:回顾排序:选择排序,冒泡排序它们的性能都很低下:意味着开发不会用,但是面试喜欢面(一般开发不用的,面试都喜欢面) lt = [15,-13,0,-88,97,31…
高阶函数之:filter函数:过滤数据的,最终返回一个惰性序列对象(filter对象,迭代器对象)解释:filter的意思:在计算机领域中我们都称为过滤器格式:filter(fn,lsd):参数和map.reduce一样理解功能:将lsd中的每一个元素都给到fn函数如果fn函数的返回值为True,那么就保留这个元素到filter对象中如果fn函数的返回值为False,那么就舍弃这个元素,不会保留到filter对象中最终filter函数执行完毕了,返回给程序一个filter对象(迭代器对象) im…
2).reduce(fn,lsd): 参数一:fn --> 函数对象 参数二:lsd --> 序列对象 功能: 先将lsd中的第一和第二个元素去除传入到fn中参与运算, 运算后得到结果,再和第三个元素传入到fn中参与运算, 以此类推... [注意]: reduce函数属于functools模块中的函数,所以需要显示的先导入functools模块再使用 from functools import reduce from functools import reduce lt=[1,2,3,4] '…
1.高阶函数: 特点:函数的形参位置必须接受一个函数对象 分类学习: 1).map(fn,lsd1,[lsd2...]): 参数一:fn --> 函数对象 参数二:lsd1 --> 序列对象(字符串.列表.range...) 功能: 将fn函数作用于lsd1中的每一个元素上, 将每次执行的结果存入到一个map对象中返回: [注意]得到的这个map对象是一个迭代器对象 需求:lt = ['1','2','3','4','5'] --> [1,2,3,4,5] map(int,lt):执行过…
管理应用 1. 将当前应用放到后台 执行之后,应用会被放到后台特定时间.比如这里就是5秒,5秒过后,应用会重新回到前台. driver.background_app(5) 官网示例: driver.background_app(1) sleep(2) el = driver.find_element_by_name('Animation') assertIsNotNone(el) 2. 检查应用是否已经安装 检查设备目前是否安装了某个应用,这里检查的是知乎APP. 这里需要的参数是该应用的包名,…
Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大且完善的通用型语言,已经有十多年的发展历史,成熟且稳定.Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用. Python语言有非常简捷.清晰的语法特点,适合完成各种高层任务,可以在所有操作系统中运行.目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多. Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣…