
洗礼灵魂,修炼python
文章平均质量分 84
geekbyte.
app分析、移动安全、tls/ja3指纹、爬虫、反爬
展开
-
洗礼灵魂,修炼python(15)--列表进阶话题—>列表解析/列表生成器
是的,我是想到什么知识点就说什么,没有固定的主题,我的标题都是在写完博客再给的。本篇博文说说列表进阶话题。其实列表应该是比较熟悉的了,而毫不夸张的说,在实际的开发中,列表也是使用的最多的,以后你会体会到我说的这句话的。列表解析1.什么是列表解析:根据已有列表,高效生成新列表的方式,还有另一个叫法是叫列表推导式2.作用:列表解析是python迭代机制的一种应用,它常用于实现创建新的列表,因此要放置在...原创 2018-03-02 12:52:19 · 443 阅读 · 0 评论 -
洗礼灵魂,修炼python(14)--模块decimal, fractions,operator,collections以及精度介绍
decimal1.作用:用于浮点数计算。相比内置的二进制浮点数实现 float这个类型有助于 金融应用和其它需要精确十进制表达的场合,控制精度,控制舍入以适应法律或者规定要求,确保十进制数位精度,或者用户希望计算结果与手算相符的场合。Decimal 重现了手工的数学运算,这就确保了二进制浮点数无法精确保有的数据精度。 高精度使 Decimal 可以执行二进制浮点数无法进行的模运算和等值测试2.函数...原创 2018-03-02 12:28:46 · 536 阅读 · 0 评论 -
洗礼灵魂,修炼python(13)--模块random,math,pickle
random1.作用:random模块用于生成随机数2.常用函数: random:用于生成一个0到1的随机符点数: 0 <= n < 1.0uniform(a, b):用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a。 ra...原创 2018-03-02 12:28:04 · 264 阅读 · 0 评论 -
洗礼灵魂,修炼python(12)--python关键词,包
关键词1.什么是关键词:就是系统已经定义好的一些关键词语法,可以直接使用,很明显的就是在IDE里这些关键词会高亮显示的就是2.有哪些关键词:前面我们一直在说关键词,内置函数,到底有哪些关键词对吧?怎么查看有哪些,学了模块之后,我们就可以导入一个keyword模块来查看:使用keyword.kwlist查看系统关键词,注意:Python2中True/False不是关键字,但Python3中是,上面使...原创 2018-03-02 12:27:19 · 254 阅读 · 0 评论 -
洗礼灵魂,修炼python(11)--python函数,模块
前面的章节你如果看懂了,基本算是入门了七八了,不过如果你以为python就这么点东西,你觉得很简单啊,那你就错了,真正的东西在后面,前面我说的几大核心其实也不是多么高深多么厉害的,那些东西是基础很常用,所以你必须掌握好,地基打好才好办事,所以才是核心。从这一章开始将渐渐进入python中关键的东西python的一个优势是有着大量自带和在线的模块(module)资源,可以提供丰富的功能,在使用这些模...原创 2018-03-02 12:26:35 · 273 阅读 · 0 评论 -
洗礼灵魂,修炼python(10)--有趣的判断分支+从实例中掌握循环语句
所有的编程语言里都有判断语句和循环语句。判断语句则是用来分支程序流程的循环语句则是为了实现一个效果,让程序的规律性的重复操作不用说,分支和循环自然在python里也是有的一,条件判断:if,if……else1.在python里if可以单独出现,也可以和else配套出现,但是else不能单独出现这里则要提到一个在编程里一个共有的特性:悬挂else:即出现多余或者不和if匹配的else,就叫悬挂els...原创 2018-03-02 12:25:32 · 671 阅读 · 0 评论 -
洗礼灵魂,修炼python(9)--灵性的字符串
python几大核心之——字符串1.什么是字符串其实前面说到数据类型时说过了,就是带有引号的参数,“”引号内的一切东西就是字符串,字符串又叫文本。2.创建字符串的两种方式:3.字符串的方法: python2:python3:同样的,不同版本里字符串的方法还是很多不一样,老套路,我还是只解析常用的:capitalize,casefold.center,count,decode,encode,ends...原创 2018-03-02 12:24:37 · 334 阅读 · 0 评论 -
洗礼灵魂,修炼python(8)--高效的字典
python几大核心之——字典(dict)1.什么是字典学生时代都用过字典吧?通过这个字的读音或者偏旁就能用字典查到其相关信息,词性,意思,组词,造句,还有在什么场合下用这个字等等的。在python中的这个字典,其实原理是一样的,当然,python里的这个字典肯定不是用来查字的,是用来查我们需要的数据的,不过,如果你真要用python字典来查哪个字也是可以的,通过python的网络爬虫来查字就行,...原创 2018-03-02 09:41:19 · 359 阅读 · 0 评论 -
洗礼灵魂,修炼python(16)--列表进阶话题—>上节作业讲解+copy模块,浅拷贝,深拷贝
上节课后作业:1.使用列表解析输出结果:[(0,0),(0,2),(2,0),(2,2)]方法1:方法2:方法3: 2.使用列表生成器打印斐波那契数列 3.使用列表解析生成列表[1x2,3x4,5x6,7x8,…,99x100] 4.利用3层for循环的列表生成式,找出对称的3位数,例如:121等从左到右从又到左还是原来的对称数 5.编写一个函数,它接受一个list,然后把list中的所有字符串变...原创 2018-03-02 12:52:58 · 218 阅读 · 0 评论 -
洗礼灵魂,修炼python(17)--跨平台操作三剑客—os,os.path.sys模块
os1.作用:因为客户基本都是使用不同的操作系统,在不同的系统下,要完成一个项目,那必须跨平台操作,而python本来就是一个跨平台的语言,而有了os模块,则不需要在意什么系统。并且os模块是用于文件/目录的操作,在很多时候,我们需要对磁盘上的目录或者文件进行操作,如果手动操作那么就已经违背我们的宗旨了,要开发就整个过程都开发,整个过程都自动化完成,所以,os模块在这里作用很大2.函数:老规矩,还...原创 2018-03-02 12:53:39 · 285 阅读 · 0 评论 -
洗礼灵魂,修炼python(25)--自定义函数(6)—从匿名函数进阶话题讲解中解析“函数式编程”
匿名函数进阶前一章已经说了匿名函数,匿名函数还可以和其他内置函数结合使用1.mapmap():映射器,映射 list(map(lambda x:x*2,range(10))) #把range产生的数字映射进lambda函数里进行计算结果: 注意:mapmap(function, sequence[, sequence, ...])接受的参数,第一个是函数,第二个,第三个可选参数也是序列 当第一...原创 2018-03-02 22:29:25 · 257 阅读 · 0 评论 -
洗礼灵魂,修炼python(24)--自定义函数(5)—匿名函数lambda
在这个互联网时代,大家都喜欢匿名,匿名上网,匿名登录,匿名操作等等,都不喜欢实名对吧?(虽然说现在实名制已经快到来,题外话,扯远了),当然python里也有个不喜欢实名的,它的功效优点特殊,说强大吧?它也有限制,说没什么用吧?它又能干很多事,它就是匿名函数匿名函数:lambda1.什么是匿名函数:其实前面也提到一点点,就是不需要使用def 来定义函数,而是在用的时候直接定义,然后用完则完(不过你...原创 2018-03-02 22:28:32 · 289 阅读 · 0 评论 -
洗礼灵魂,修炼python(23)--自定义函数(4)—闭包进阶问题—>报错UnboundLocalError: local variable 'x' referenced before assign
闭包(lexical closure)什么是闭包前面已经说过了,但是由于遗留问题,所以单独作为一个章节详解讲解下不多说,看例子:def funx(x): def funy(y): return x*y #此时的funy函数对外层funx函数的变量调用,则称为闭包 return funy 结果:>>> i=funx(4)>>&g...原创 2018-03-02 22:27:53 · 2640 阅读 · 2 评论 -
洗礼灵魂,修炼python(22)--自定义函数(3)—函数作用域,闭包
前面你看到嵌套两层的函数,也许你有感而发,想来点刺激的对不?那么如果每层内的变量名如果相同会怎样?拿个例子看下就知道:报错了,报错信息大意是,本地变量‘num’引用前没有被赋值定义。这咋回事,我外层不是定义了吗?这个问题就涉及到今天要说的话题——函数作用域函数作用域1.作用域分三个:本地作用域(local),函数内作用域(enclosing),全局作用域(global)2.三个作用域的优先级规则是...原创 2018-03-02 22:26:57 · 294 阅读 · 0 评论 -
洗礼灵魂,修炼python(21)--自定义函数(2)—函数文档,doctest模块,形参,实参,默认参数,关键字参数,收集参数,位置参数
函数文档1.什么是函数文档:就是放在函数体之前的一段说明,其本身是一段字符串,一个完整的函数需要带有函数文档,这样利于他人阅读,方便理解此函数的作用,能做什么运算2.怎么查看函数文档:function.__doc__ 注意:不加小括号3.例:你可能会想,假如我不传入参数能直接打印函数文档吗?测试一下就知道:结果是可以的接着想,前面说不能带小括号,我确认一下是不是真的不能带小括号呢:果然是不行的...原创 2018-03-02 22:26:16 · 360 阅读 · 0 评论 -
洗礼灵魂,修炼python(20)--自定义函数(1)—基础概念
作为开发,那么我们前面学的那些知识其实够了,但是不够精简,也不好维护,比如需要打印斐波那契数列: 而当我们需要再次打印斐波那契数列,又要把这段代码加上,是不是很烦,有没有方法可以解决,当然可以,那就是自定义函数,你把斐波那契数列定义为一个函数,然后需要时调用函数就行,这样一劳永逸对不对? 自定义函数1.作用:为了代码最大程度的重用和简化代码冗余而提供的基本程序结构,函数是一种设计工具,它能让程序员...原创 2018-03-02 12:55:47 · 275 阅读 · 0 评论 -
洗礼灵魂,修炼python(19)--文件I/O操作,linecache,fileinput模块
文件I/O操作1.什么是文件I/O操作首先I/O(input/output),即输入/输出端口,然后文件,大家应该都是是什么,一个数据,一个txt或者html文档就是一个文件。文件操作就是对文件进行读写删除等的操作。文件I/O操作,个人理解,就是与用户有交互式的文件操作,换句话就是读写操作文件也是一个可迭代对象2.有哪些操作:1):I/O操作:raw_input函数,input函数即可以进行I/O...原创 2018-03-02 12:55:07 · 421 阅读 · 0 评论 -
洗礼灵魂,修炼python(18)--温故加知新
类型转换:1.str(),repr(),format():将非字符串数据转换为字符串str():对象序列化的结果,相当于print输出repr():程序中某个对象精确值format():利用特定格式转换为字符串,format函数用法见后面2.int():转为整数形int函数也可以使用进制:(这个在前面已经提到过的) Int转换类型并给定进制的方法,并不是都可行: 3.complex():转换为复...原创 2018-03-02 12:54:21 · 376 阅读 · 0 评论 -
洗礼灵魂,修炼python(7)--元组,集合,不可变集合
前面已经把列表的基本用法讲解完接着讲python的几大核心之——元组(tuple)1.什么是元组?类似列表,但为不可变对象,之前提到列表是可变对象,所谓可变对象就是支持原处修改,并且在修改前后对应的内存空间里的id依然不变,而不可变对象就是不支持原处修改,得重新赋值才行,但在重新赋值的时候,内存ID已经发生改变。元组的特征是什么呢?下面会解释!2.创建元组的两种方式:注意:元组的特征是()没错,但...原创 2018-03-02 09:38:11 · 454 阅读 · 0 评论 -
洗礼灵魂,修炼python(6)--活起来的代码+列表
活起来的用法:使用input内置函数注意python2中和python3中,input函数是不太一样的,python2中,input用户传入什么类型就是什么类型而python3中,不管传入什么类型,都会变成字符串,这和python2中的raw_input函数相同,并且在python3中不再有raw_input。有了input,就可以和用户交互,可以让代码活起来,然而你是不是觉得好像没什么鸟用对不对...原创 2018-03-02 09:37:33 · 271 阅读 · 0 评论 -
洗礼灵魂,修炼python(5)--python操作符,内置函数
前面提到了BIF(内置函数)这个概念,什么是内置函数,就是python已经定义好的函数,不需要人为再自己定义,直接拿来就可以用的函数,那么都有哪些BIF呢?可以在交互式界面(IDLE)输入这段代码,注意是两边都是双下划线dir(__builtins__) 则可以查看不同python版本都有哪些BIF就看这些就能很明显的看出python3和python2还是有很多区别的,想看哪个BIF的用法就直...原创 2018-03-02 09:36:42 · 351 阅读 · 0 评论 -
洗礼灵魂,修炼python(33)--面向对象编程(3)—特殊类方法__init__,公有属性,私有属性
在上一篇博文里,传入参数时,是在实例化对象后且在调用方法时才传入参数,感觉是不是有点繁琐对吧?可以在实例化的时候就传入参数吗?可以的,这就是本篇博文的要讲到的构造器——__init__(两边双下划线)__init__(注意两边是双下划线,后面不再提示)1.什么是__init__初始化方法,也叫构造器,会在特定条件下自动调用其内的方法除了有构造器的作用,和其他方法没什么区别2.例子:class Pe...原创 2018-03-07 21:15:27 · 298 阅读 · 0 评论 -
洗礼灵魂,修炼python(32)--面向对象编程(2)—进一步认识类
上一篇文章已经看到了如何定义类,但是我想你应该有很多疑惑的吧?最好的学习方法就是不断思考,不断问为什么,不断和已有知识做类比,从中获得理解。那么这一篇博文就是从解惑答疑中进一步认识类。解惑答疑我按照我的想法列出了几个主要的疑问:1.定义的类的方法可以单独拿出来调用吗?因为格式和定义函数是一样的先看看之前那个例子:class People(): #属性 head=1 #一个...原创 2018-03-07 21:14:52 · 297 阅读 · 0 评论 -
洗礼灵魂,修炼python(31)--面向对象编程(1)—面向对象,对象,类的了解
面向对象 1.什么是面向对象(图片来自网络)哈哈,当然不是图中的意思。 1).面向对象(Object Oriented,OO)是软件开发方法。利用各大搜索引擎得到的解释都太官方,完全看不懂啥意思对吧?那么我的理解是这样:在上一篇博文说到了装饰器的含义,给一个现有的程序添加新的功能,同时又不改变其结构,作为现有对象的一个包装修饰。那么其实被用于修饰的程序就是我们这篇文章主旨——面向对象里的对象;不管...原创 2018-03-07 21:11:17 · 331 阅读 · 0 评论 -
洗礼灵魂,修炼python(30)--装饰器(2)—>装饰器总结+进阶使用
在上一篇博文的经典案例中,我想你应该对装饰器有很好的了解了,不过光有那些还不够真的,还需要总结和进阶一下,所以本篇博文解析装饰器进阶。 装饰器1.什么是装饰器?个人理解:装饰器又叫语法糖,指的是对原程序内部整个代码不作任何更改,在外部写好一个带某种功能的程序来作用于原程序,对其进行修饰或者叫装饰,这就是装饰器。还有两种理解是:1).在代码运行期间动态增加功能的方式,称之为“装饰器”2).装饰器,允...原创 2018-03-07 21:10:32 · 264 阅读 · 0 评论 -
洗礼灵魂,修炼python(29)--装饰器(1)—>利用经典案例解析装饰器概念
前提必备不急着进入正题,在前面函数作用域那一章介绍了闭包,全局变量局部变量,这里再看几个简单的闭包案例:1):不带参数注意:1.这里的name属性是每个函数都有的,可以反馈函数名2.temp()是调用函数的意思,如果直接temp只是一个函数对象,并且打印出这个函数的内存地址 2):外层函数带参数 3):内外层函数都带参数 如果希望让内层函数修改外层函数的参数并返回呢?前面说过的,这样会引起异常...原创 2018-03-07 21:09:53 · 329 阅读 · 0 评论 -
洗礼灵魂,修炼python(28)--异常处理(2)—>运用异常
你可能会想,卧槽这标题取的,前面不是说异常就是报错吗?异常还能运用?是的,异常确实可以运用,可以刻意制造异常,在出现异常时捕获异常并对异常处理,所以进入本篇博文的话题—异常处理异常处理:异常处理分两个,捕获异常和抛出异常一、捕获异常1.为什么要捕获异常?这个问题应该都会想到的,出错就出错,改就是啊,不急,先看一个例子:我个人理解:在实际的开发中,异常是很常见的,程序员需要事先考虑所有的可能性,不然...原创 2018-03-07 21:09:18 · 300 阅读 · 0 评论 -
洗礼灵魂,修炼python(27)--异常处理(1)—>了解异常
python学到这,其实你应该是在入门到进阶的中间阶段了,但是还没有到进阶的阶段的,这是肯定的,因为进阶得可以从实际问题中解决问题的,比如写一个自动化的爬虫程序啊,对一件事物作大数据归纳分析,开发一个多人聊天服务器等等的。目前还不够的好,今天,说一个python中很关键的知识点——异常异常1.什么是异常:异常即报错,就像前面例题解析中出现的报错,就是异常,python运行时出现的错误就是异常 2....原创 2018-03-07 21:08:39 · 251 阅读 · 0 评论 -
洗礼灵魂,修炼python(26)--编程核心之“递归”
递归1.什么是递归:其实前面都提过,但没有详细讲。多次调用自身就叫递归看图,这种就叫递归 看过盗梦空间没?其实也是递归2.递归需要满足条件:有调用函数自身有一个正确的返回条件来结束在使用递归策略时,必须有一个明确的递归结束条件,即递归出口3.递归和迭代的区别:递归:(recursion)指的是一个函数不断调用自身的行为,比如以编程方式输出著名的斐波纳契数列遍历:(traversal)指的是按照一定...原创 2018-03-07 21:07:54 · 287 阅读 · 0 评论 -
洗礼灵魂,修炼python(34)--面向对象编程(4)—继承
前面已经说到面向对象编程有封装,继承,多态三大特性,那么其中的继承则很重要,可以直接单独的拿出来解析继承1.什么是继承:字面意是子女继承父母的家产或者特性等。而在编程里继承是指子类继承父类(基类,超类,都一个意思)的属性和方法2.怎么继承:说个简单的例子,在前面里说到了定义类时使用object参数后就带有了object的属性和方法,这种自然带有的属性和方法就是继承。所以,继承的方法:在事先有父类的...原创 2018-03-07 21:16:09 · 345 阅读 · 0 评论 -
洗礼灵魂,修炼python(35)--面向对象编程(5)—多重继承,组合
多重继承关于继承在上一篇博文已经说过了,怎么继承相信你也懂了。那么进入进阶话题,多重继承1.什么是多重继承继承的概念你清楚,那么多重继承就简单了。我的理解就是子类继承多个基类2.怎么多重继承定义多个基类,然后子类定义时继承多个基类,这就是多重继承。例1: 其实就和前面的一般继承是一样的对吧?就只是传入的基类由一个成了两个或多个而已 例2:定义一个儿子继承父母特征的子类class Human: ...原创 2018-03-07 21:16:45 · 372 阅读 · 0 评论 -
洗礼灵魂,修炼python(4)--从简单案列中揭示常用内置函数以及数据类型
上一篇说到print语句,print是可以打印任何类型到屏幕上,都有哪些类型呢?整形(int)长整型(long)浮点型(float)字符型(str)布尔型(bool)最常见的就这几种。 在这之前不得不先提到一个知识——变量,什么是变量,一般会这么理解:就是会变的量,它的值会改变的量,与常量(数字)对应。其实这不太准确的。变量名就像我们现实社会的名字,把一个值赋值给一个名字时,TA会存储在内存中...原创 2018-03-02 00:22:25 · 233 阅读 · 0 评论 -
洗礼灵魂,修炼python(3)--从一个简单的print代码揭露编码问题,运行原理和语法习惯
前期工作已经准备好后,可以打开IDE编辑器了,你可以选择python自带的IDLE,也可以选择第三方的,这里我使用pycharm——一个专门为python而生的IDE按照惯例,第一个python代码打印一个所有开发语言里入门必学“hello,world”?no,你错了,我偏不 第一行是编码,utf-8这是国际使用标准,如果我不加的话,很容易出错第二行print(打印的意思)语句,是python的关...原创 2018-03-02 00:21:21 · 378 阅读 · 0 评论 -
洗礼灵魂,修炼python(2)--python安装和配置
安装python和基本配置:python官方下载地址:www.python.org 打开网站,然后下载对应(32位和64位,windows版还是linux版)的版本,你可以选择python3或者2,目前python2企业用的多,为什么呢?因为目前(注意我的博文发布时间)很多第三方模块还是对python2支持以及更好的配合,python3很多模块都不太兼容。但是有个问题,python官方给的建议还是...原创 2018-03-02 00:17:07 · 322 阅读 · 0 评论 -
洗礼灵魂,修炼python(40)--面向对象编程(10)—定制魔法方法+time模块
定制魔法方法1.什么是定制魔法方法首先定制是什么意思呢?其实就是自定义了,根据我们想要的要求来自定义。而在python中,其实那些所谓的内置函数,内置方法,内置属性之类的其实也是自定义出来的,不过是龟数开发python时已经给出了,已经自带了基本能想到的功能都带有了,换句话就是已经给我们事先定义好了,要用的话,直接拿来就用就是,不需要我们自己再去定义。定制魔法方法就是自定义魔法方法了。但是必须遵循...原创 2018-03-07 21:20:24 · 365 阅读 · 0 评论 -
洗礼灵魂,修炼python(39)--面向对象编程(9)—魔法方法表
好的,不多说,大招来了,几乎完整的魔法方法: 基本的魔法方法__new__(cls[, ...])__new__ 是在一个对象实例化的时候所调用的第一个方法它的第一个参数是这个类,其他的参数是用来直接传递给 __init__ 方法__new__ 决定是否要使用该 __init__ 方法,因为 __new__ 可以调用其他类的构造方法或者直接返回别的实例对象来作为本类的实例,如果 __new__ 没...原创 2018-03-07 21:19:21 · 234 阅读 · 0 评论 -
洗礼灵魂,修炼python(38)--面向对象编程(8)—从算术运算符进一步认识魔法方法
上一篇文章了解了魔法方法,相信你已经归魔法方法至少有个概念了,那么今天就进一步的认识魔法方法。说这个之前,大脑里先回忆一下算术操作符。什么是算术操作符?忘记没有?忘记了的自己倒回去看我前面的博文或者自己网上找吧。+,-,*,/,**,//,%(用法忘记了的回去看)是不是一般就这些,那么你有没有想过,为什么使用算术符里的某一个符号时程序就会乖乖听话的怎么操作?难道它里面嵌入了一个计算机器功能?难道它...原创 2018-03-07 21:18:27 · 307 阅读 · 0 评论 -
洗礼灵魂,修炼python(37)--面向对象编程(7)—了解魔法方法
也许上一篇博文提到的property内置函数的用法你还觉得记忆犹新,那么有没有更多的类似的方法呢?有的,就是本篇文章要说的魔法方法魔法方法1.什么是魔法方法(其实前面已经提到多次,每次我都是说暂且不谈,后面会提到,在这里终于填坑了)总是被双下划线包围的方法,比如__init__魔法方法是面向对象的python的一切。有句话叫“如果你不清楚魔法方法,那么你还没能意识到面向对象的python的强大”所...原创 2018-03-07 21:17:51 · 208 阅读 · 0 评论 -
洗礼灵魂,修炼python(36)--面向对象编程(6)—类的相关内置函数issubclass,hasattr等
啥?我靠,类也有内置函数?哈哈,确实有的。有哪些呢?请往下看issubclass(cls, class_or_tuple, /)1.基本属性:方法全是特殊方法2.使用方法:判断一个类是否由另一个类派生(继承)先说说里面的参数,第一个cls即是class,类的意思。第二个class_or_tuple是类或者元组(下同)当第一个参数类是第二个参数类的子类,那么就返回True,属于非严格性道德检测:1)...原创 2018-03-07 21:17:21 · 276 阅读 · 0 评论 -
洗礼灵魂,修炼python(1)--python简介
首先,本人也是刚接触python短短几个月,没有老鸟的经验和技能,大佬勿喷,以下所有皆是本人对python的理解python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言。1989年,Guido von Rossum(荷兰人)人称龟叔,他在圣诞节时因为无聊而开发出来的,详细的python发展史介绍可以百度或Google,已经很多了,不再赘述。python是从20原创 2017-10-18 20:04:36 · 507 阅读 · 0 评论