自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

若数的博客

用一台计算机贡献自己的价值

  • 博客(120)
  • 收藏
  • 关注

原创 什么是测试系统工程师(TSE)

以华为公司为例,华为公司在2010开始推行TSE的角色,并与其它成员相互配合,下图可以看到,TSE是系统工程的一部分,主要负责测试领域的把关: (这是一个虚拟的组织,TSE的部门依然是测试部)如同产品的系统设计一样,测试也需要系统架构师,站在系统的角度对整个产品进行功能或性能测试,这就我们所说的TSE(Testing System Engineer,测试系统工程师),共创力咨询在国内各个大中城市开设公开课和内训、咨询服务的过程中,发现国内的研发创新型企业不但SE缺乏,其实TSE也缺乏。

2023-09-14 14:45:00 1898

原创 一条命令搭建linux http服务(appache版本)

【代码】一条命令搭建linux http服务(appache版本)

2023-07-11 15:48:47 111

原创 nohub命令

如果使用nohub执行程序未显示进行标准输出流重定向,则标准输出流默认重定向到当前工作目录的nohub.out文件中。如果当前工作目录的nohub.out文件不可写,输出重定向到$HOME/nohub.out文件中。常见的用法是与&一起使用,将命令放到后台运行,并且终端挂掉之后还会运行。1) 2>&1 标识标准错误输出重定向等同于标准输出重定向,及标准错误输出也重定向到文件test.log中。如果标准错误未显示重定向,那么标准错误默认重定向到与标准输出相同的文件。2)&命令是命令放在后台执行。

2023-05-05 17:09:26 820

原创 yum安装httpd报错[Errno 256] No more mirrors to try

将Linux服务器的包信息下载到本地电脑缓存起来,makecache来建立一个缓存,后边yum安装在缓存中搜索,提高了速度。进行安装,没有出现报错,问题解决。清理客户端yum源配置的缓存。

2023-04-17 13:55:58 856

原创 Python3 js文本数据解密爬虫 AES CBC模式解密

最近采集一个网站,返回数据json数据全是这样的:很明显是这个数据是做了加密的,于是尝试在sources中寻找关键加密的关键字,诸如base64等,果不其然,打几个断点发现这里就是所有json数据解密的关键过程,搜索关键字aes相关:在结合解密代码,在一个加解密网站成功复刻了数据:接下来就是利用Python3完成对应的解密过程,对应的博客 简单分离处理后得到Python3版本的AES ...

2019-12-09 15:50:44 735

原创 python爬虫获取localStorage中的数据

最近采集数据遇到一个accessToken 类似微信中公众号的全局唯一接口调用凭据access_token,公众号调用各接口时都需使用access_token。但是这个可不友好,该数据是存放在localStorage,是一种可以替代cookie,存储更多地信息的本地存储方式,我们可以利用selenium执行js拿到localStorage中的目标数据:browser.get("http://j...

2019-12-09 15:28:57 6164 2

转载 selenium怎样避免被服务器检测

selenium怎样避免被服务器检测  selenium是用来完成浏览器自动化相关的操作.可以通过代码的形式制定一些基于浏览器自动化的相关操作(行为动作),当代码执行后,浏览器就会自动触发相关的事件.但这并不能避免服务器的检测.当在浏览器中打开开发者工具输入window.navigator.webdriver时会显示true,说明被服务器检测到了,通常情况下会显示undefined.下面我们就通...

2019-06-28 14:47:10 6402

原创 Python3之数据指纹MD5校验与对比

MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。概述MD5校验码通过散列函数计算而成,可以生成任何数据的数据“...

2019-06-10 22:14:10 429

原创 Python函数参数匹配模型通用规则keyword-only参数

概述Python3对函数参数的排序规则更加通用化了,即Python3 keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。该规则在处理人一多个参数是很有用的。keyword-onlykword_only(1, 2, 3, c=4)print('-' * 20)kword_only(a=1, c=3)示例结果:1 (2, 3) 4-----...

2019-06-09 21:55:16 570

原创 Python函数参数匹配模型(下)

任意参数 *当我们的函数接收参数为任意个,或者不能确定参数个数时,我们,可以利用*来定义任意数目的参数,这个函数调用时,其所有不匹配的位置参数会被赋值为元组,我们可以在函数利用循环或索引进行使用def f(*args): # 直接打印元组参数 print(args) print('-'*20) # 循环打印元组参数 [print(i) for i in ...

2019-06-08 17:46:56 181

原创 Python函数参数匹配模型(上)

概述Python3中函数参数一般都是通过赋值进行传递的,而调用者只需要知道如何正确的传递参数即可直接使用函数,位置参数即我们使用最频繁的参数传递方法,通过参数的默认位置从左到右进行匹配def f(x, y, z): print(x, y, z)f(1, 2, 3)示例结果:1 2 3关键词参数我们可以通过函数参数关键字进行参数传递,此时参数的传递是通过变量名匹配,...

2019-06-07 20:59:15 431

原创 Python3之递归函数简单示例

概述递归函数即直接或间接调用自身的函数,且递归过程中必须有一个明确的递归结束条件,称为递归出口。递归极其强大一点就是能够遍历任意的,不可预知的程序的结构,比如遍历复杂的嵌套列表。递归求和我们可以利用递归函数实现一个Python内置函数sum()的递归版。# 递归def d_sum(L): if not L: return 0 else: r...

2019-06-06 18:38:35 551

原创 Python3之对象垃圾收集机制浅析

###概述GC作为现代编程语言的自动内存管理机制,专注于两件事:1. 找到内存中无用的垃圾资源 2. 清除这些垃圾并把内存让出来给其他对象使用。 在Python中,它在每个对象中保持了一个计数器,用于记录指向该对象的的引用的个数。一旦这个计数器为0时,则立即回收该对象,对象占用的内存空间将被释放。引用计数我们可以利用简单的变量引用和销毁窥见引用计数过程。增加引用计数增加引用计数的方式多种...

2019-06-05 22:14:04 139

原创 Python3内置模块之Pickle和cPickle数据持久化方法小结

概述模块Pickle实现了对一个 Python 对象结构的二进制的序列化和反序列化。  即当Python程序持续运行一些字符串、列表字典、甚至自定义的类等数据对象,需要持久化存储,即存储在磁盘中,防止运行在内存中,因断电等情况丢失数据。那么Pickle模块就派上用场了,它可以将对象转换为一种可以传输或存储的格式。python的pickle模块实现了基本的数据序列和反序列化。通过pick...

2019-06-04 22:03:40 432

原创 Python3日期与时间戳转换的几种方法

概述日期和时间的相互转换可以利用Python内置模块time和datetime完成,且有多种方法供我们选择,当然转换时我们可以直接利用当前时间或指定的字符串格式的时间格式。获取当前时间转换我们可以利用内置模块datetime获取当前时间,然后将其转换为对应的时间戳。import datetimeimport time# 获取当前时间dtime = datetime.datetime....

2019-06-03 21:47:14 4512

原创 Python3之字符串格式化format函数详解(下)

格式限定符format通过丰富的的“格式限定符”(语法是 {}中带:号)对需要格式的内容完成更加详细的制定。进制转换我们可以再限定符中制定不同的字符对数字进行进制转换的格式化,进制对应的表格:字符含义b二进制cUnicode 字符d十进制整数o八进制数x十六进制数,a 到 f 小写X十六进制数,A 到 F 大写N = 99...

2019-06-02 22:09:08 284

原创 Python3之字符串格式化format函数详解(上)

概述在Python3中,字符串格式化操作通过format()方法或者f’string’实现。而相比于老版的字符串格式化方式,format()方法拥有更多的功能,操作起来更加方便,可读性也更强。该函数将字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号{}作为特殊字符代替%。位置设定默认位置不指定格式化位置,按照默认顺序格式化S = 'I {} {}, and I\'am lea...

2019-06-01 22:48:24 345

原创 Python3内置模块之base64编解码方法小结

概述Base64 是网络上最常见的用于传输 8Bit 字节码的编码方式之一,Base64 就是一种基于 64 个可打印字符来表示二进制数据的方法。可查看 RFC2045 ~ RFC2049,上面有 MIME 的详细规范。Base64 编码是从二进制到字符的过程,可用于在 HTTP 环境下传递较长的标识信息。比如使二进制数据可以作为电子邮件的内容正确地发送,用作 URL 的一部分,或者作为 HTT...

2019-05-31 21:37:47 1179

原创 Python3内置模块之json编解码方法小结

概述Python3中我们利用内置模块json解码和编码JSON对象,JSON(JavaScript Object Notation)是指定 RFC 7159(废弃了RFC 4627)和 ECMA-404是一种轻量级数据交换格式,受 JavaScript对象文字语法的启发 (虽然它不是JavaScript 1的严格子集)。下面为Python对象–>JSON对象的对照关系表。Pyth...

2019-05-30 22:12:01 284

原创 Python3内置模块之pprint让打印比print更美观

概述在我们使用内置打印函数print时,打印出的Python数据结构对象总是一行的输出的方式,这样对数据结构较复杂或数据较多的对象的显示并不美观,这时我们可以利用pprint输出美化数据结构对象。pprint方法概览美化输出我们可以利用pprint中的PrettyPrinter控制输出的打印时的缩进,行宽、甚至打印深度等,定义类如下class pprint.PrettyPrinter(i...

2019-05-29 21:56:10 985

原创 Python3爬虫框架Scrapy:scrapy view http://www.xxx.com DEBUG: Forbidden by robots.txt:解决方案

当我们想利用scrapy view来查看requests后的网页结果并在把浏览器中渲染出来时,可以:scrapy view http://www.baidu.com可能遇到以下问题:DEBUG: Forbidden by robots.txt: <GET http://www.baidu.com>即Scrapy在requests时会查看目标网站的robots.txt,判断是否允许...

2019-05-29 16:42:14 814

原创 Python3内置模块之玩出花儿的random随机方法小结

概述random是Python中与随机数相关的模块,其本质就是一个伪随机数生成器,我们可以利用random模块基础生成各种不同的随机数,以及一些基于随机数的操作。生成随机数相关生成0~1之间的浮点数import randomr = random.random()print(r)r = random.random()print(r)示例结果:0.9928249533693085...

2019-05-28 22:10:17 190

原创 Python增强赋值及共享引用注意事项

概述Python中的增强赋值是从C语言中借鉴出来的,所以这些格式的用法大多和C一致,本身就是对表达式的简写,即二元表达式和赋值语句的结合,比如a += b 和a = a + b 就是一致的,比如还有以下的增强赋值语句。----a += ba &= ba -= ba |= ba *= ba ^= ba /= ba >>=ba %...

2019-05-27 21:56:18 159

原创 Python3多目标赋值及共享引用注意事项

概述Python中多目标赋值即将等号左边所有的变量名都赋值给右边的对象,完成赋值操作,比如将三个变量同时赋值给一个字符串。a = b = c = 'Python'print(a)print(b)print(c)示例结果:PythonPythonPython在多目标赋值中,其本质即类似三个变量的指针指向了同一个内存空间,即三个变量共享了内存内同一对象。不可变对象对于不可变...

2019-05-26 21:42:57 313

原创 Python3之打印操作打印流重定向(下)

概述当我们在Python的print打印时,我们到底在使用什么? 其实print语句不过是Python简便使用的特性体验而已,其背后就是sys.stdout对象的简单接口,即我们也可以利用sys.stdout完成所有print打印行为,比如打印Hello, world!。import syssys.stdout.write('Hello, world!')示例结果:Hello, wor...

2019-05-25 21:50:25 893

原创 Python3之打印操作print详解(上)

概述一般学习一门编程语言,我们完成的第一个动作就是通过该语言输出Hello, world在cmd或者其他程序上,而Python也不例外,我们利用内置函数print完成输出需要的内容,那么print有哪些具体的用法呢?print语法形式:print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])基本打印打印字符串print...

2019-05-24 22:06:46 2923 4

原创 Python3之enumrate和range对比及示例

概述在Python中,enumrate和range都常用于for循环中,enumrate函数用于同时循环列表和元素,而range()函数可以生成数值范围变化的列表,而能够用于for循环即都是可迭代的。range概述range是用于产生连续或者带步长的数字元素组成的列表,下面是一些基本使用及场景示例。产生数字序列# 产生0-9的序列for i in range(0, 10): p...

2019-05-23 21:58:16 789

原创 Python3除法之真除法、截断除法和下取整对比

概述在Python3中,数学运算中的除法被分为两种,分别是“真除法”,即无论任何类型相除的结果都会保留小数点,和我们实际的数学运算结果一致,而“截断除法”,则是无论任何类型相除的结果都会省略结果的小数部分,剩下最小的能整除的整数部分。以下是两种除法的基本形式:# 真除法X / Y# 截断除法X // Y真除法X = 8Y = 2Z = 3print(X / Y)prin...

2019-05-22 21:35:59 442

原创 Python3之手动创建迭代器

概述迭代器即可以遍历诸如列表,字典及字符串等序列对象甚至自定义对象的对象,其本质就是记录迭代对象中每个元素的位置。迭代过程从第一个元素至最后一个元素,且过程不能回滚或反方向迭代。两个基本方法iter、next序列对象可以利用iter()直接创建迭代器,并通过next()即可迭代迭代器。利用for循环迭代S = 'PYTHON'IT = iter(S)for it in IT: ...

2019-05-21 22:15:30 145

原创 Python3列表解析之任意迭代、表达式、条件和嵌套循环等特性详解

概述列表解析即利用现有的可迭代对象创建新的列表的Python语法,其过程完全可以用for循环复刻,但其解析效率比for循环快一些,缺点也很明显,即不适合用于大数据迭代对象的解析,因为会占用大量内存,导致MemoryError。当然列表解析让人爱不释手的另一个原因就是简洁。列表解析基础示例解析列表L = [1, 2, 3, 4, 5]LL = [x ** 2 for x in L][pr...

2019-05-20 21:39:29 2452 5

原创 Python不可变对象元组(tuple)详解

概述元组和列表很相似,不过元组是不能在原处改变的对象,这点性质和字符串一致,虽然元组不支持任何方法调用,但是元组具有列表的大多数属性,以下是元组的一些特性。支持索引和切片 既可以通过索引和切片读取元组内的数据固定长度 由于元组为不可变的序列,所以是不能在生成一个拷贝的情况下进行增删的任意嵌套 即元组和列表、字典都支持其他的复合对象,比如其他的元组,字典,列表等常见使用示例一些基础定...

2019-05-19 22:20:38 1634

原创 利用Python3内置文档资源高效学习及官方中文文档

概述从前面的对Python基础知识方法介绍中,我们几乎是围绕Python内置方法进行探索实践,比如字符串、列表、字典等数据结构的内置方法,和大量内置的标准库,诸如functools、time、threading等等,而我们怎么快速学习掌握并学会使用这个Python的工具集呢? 我们可以利用Python的内置文档大量资源既可以掌握许多关于Python工具集的基本使用。dir函数Python中内...

2019-05-18 23:33:45 1058

原创 Python3中一些高阶函数map、reduce、filter详解及示例

在编程语言中,高阶函数指的是接受函数作为输入或输出的函数。map概述python中的map()函数是一个内置的高阶函数,一般用法是map(function, iterable)。需要传入一个函数,这个函数可以是内置的,也可以是自己定义,也可以是匿名函数即lambda。第二个参数是一个可迭代对象,如列表、字典字符串等。map函数返回的是一个map对象,也是一个可迭代对象,可以利用for循环迭...

2019-05-17 22:00:27 1465 2

原创 Python3匿名函数lambda详解及使用示例

概述匿名函数,顾名思义即没有名称的函数,和def定义的函数的最大区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值,表达式本身结果就是返回值。),而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式:lambda arg1,arg2,.....argn:expression以下为一些lamb...

2019-05-16 21:21:07 2642 11

原创 python3迭代器之for循环迭代及原理浅析

概述当我们在使用for循环时,即重复运行一个代码块,或者不断迭代容器对象中的元素,比如一些序列对象,列表,字典,元组,甚至文件等,而for循环的本质取出可迭代对象中的迭代器然后对迭代器不断的操作。一些迭代方法迭代列表L = [1,2,3,4,5]for element in L: print(str(element) * 3)# 利用enumerate获取索引进行迭代for...

2019-05-15 21:49:54 2837 10

原创 Python3 对象组合zip()和回退方式*zip详解

zip概述zip即将多个可迭代对象组合为一个可迭代的对象,每次组合时都取出对应顺序的对象元素组合为元组,直到最少的对象中元素全部被组合,剩余的其他对象中未被组合的元素将被舍弃。keys = ['one', 'two', 'three']values = [1, 2, 3]d = zip(keys, values)print(list(d))示例结果:[('one', 1), ('t...

2019-05-14 22:11:39 1361 2

原创 Python3序列赋值、序列解包详解(下)

扩展序列解包上节我们提到解决赋值中等号两边参数不一致的方法可以通过切片,但在Python3中我们可以利用特定的语法更加方便的处理这种情况,如下示例。当带*出现在结尾间时L = [1, 2, 3, 4, 5]a, *b = Lprint(a, b)示例结果:1 [2, 3, 4, 5]我们可以看到a匹配了列表中第一个元素值,而b匹配了后面所有的内容,并且为列表。即当我们利用带*符...

2019-05-13 22:26:34 558

原创 Python3序列赋值、序列解包详解(上)

###概述赋值是各个编程语言通用的概念,而在Python有多种赋值方法以供选择,比如元组、列表、序列赋值运算等,甚至还有扩展的序列解包赋值方法完成更加复杂的赋值运算。一些基本赋值运算下面示例介绍了元组赋值运算、列表赋值运算及任意对象的序列赋值的简单使用# 元组赋值运算one, two, three = (1, 2, 3)print(one, two, three)# 列表赋值运算o...

2019-05-12 22:01:55 1685

原创 Python3中真真假假True、False、None等含义详解

概述在Python中,不仅仅和类C一样的真假类似,比如1代表真,0代表假。Python中的真假有着更加广阔的含义范围,Python会把所有的空数据结构视为假,比如[](空列表)、{}(空集合)、''(空字符串)等,而与之相反的非空数据结构即为真。简单对比代码:# 遍历列表中的示例元素,获取对应的真假:for elenment in ['', 'S', [], [1, 2], {}, {3,...

2019-05-11 22:03:52 3790 8

原创 总结:11个Python3字典内置方法大全及示例

概述字典有着类似列表的高灵活度的特点,而与列表通过偏移索引的存取元素的方式不同,字典是通过无序的键来存取键值对的,即字典是任意对象的无需集合,可在原处增加或减少,且支持任意深度的嵌套(即可以包含诸如列表,其他的字典等),下面就介绍了Python提供的11个字典内置方法的基本概述及简单示例。方法描述clear清除字典中所有键值对copy对字典进行浅拷贝,如需详细了解...

2019-05-10 21:02:56 1226 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除