![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python渐进
文章平均质量分 76
万象IT
这个作者很懒,什么都没留下…
展开
-
数字的使用
原载于https://mp.weixin.qq.com/s/z3lB89vpM16o7E8QGp4NHg前段时间因为需要用到python抓取数据,做一些简单的数据分析的工作,所以把python完整学习一遍。期间碰到不少问题,到网上查找答案的时候,经常碰到语焉不详避重就轻的答案。有时候网上一些解决问题的思路有点绕,为何那样做,原因并没有介绍,让人心生疑惑。迫不得已把python的官方文档通篇阅读了一...转载 2018-07-04 14:34:54 · 206 阅读 · 0 评论 -
python渐进---异常
原载于https://mp.weixin.qq.com/s/7gUwkRaRTcBWEkIIN29KWw在代码运行过程中通常会有异常的产生。比如说操作的数据类型不对,对象的方法和变量不存在,文件不存在,网络无法连上,数据库写失败,字符编码解析失败等等。这些异常都是需要被处理的,如果不进行捕捉和处理,那么代码就会停止运行。为了能够让代码能够在各种情况下运行,需要考虑运行过程中可能产生的各种异常,并且...转载 2018-07-13 09:11:57 · 157 阅读 · 0 评论 -
python渐进---迭代器和生成器
原载于https://mp.weixin.qq.com/s/x2_9mxQjV5wZTMKeb4BLnA访问数据列表可能有两种产生方式,一种是整个数据列表存储在内存里面,接着从第一个数据开始一个接一个顺序访问;一种是数据列表是一边顺序访问,一边通过计算得出。如果数据量很大,第一种方式会很损耗内存空间。而第二种方式是边读边生成的方式,会节省很多空间。迭代器和生成器主要是为了边读边生成的方式准备的。它...转载 2018-07-13 09:10:37 · 109 阅读 · 0 评论 -
python渐进---类4
原载于https://mp.weixin.qq.com/s/hbcH3ez3nBzmviTSq5jUkg13.8 私有性python没有关键字可以定义一个类属性的私有性。任何类属性都是公开的。在使用上,如果一个属性以_开头,比如说_a,那么就会被认为是一个私有的变量。这样并不能保证这个变量不被其它代码块访问,只能靠程序员的自觉。如果一个属性以__开头,并且没有以__结束。那么python会自动给它...转载 2018-07-13 09:09:44 · 124 阅读 · 0 评论 -
python渐进---类3
原载于https://mp.weixin.qq.com/s/RyjY7hZVn8xGdv3GL1TmDA13.6 实例化以及__init__函数类在进行实例化的时候,python会自动生成一个实例对象,然后调用实例的__init__()方法进行本实例的初始化工作。在定义类的时候,可以自行创建一个__init__()函数,接收初始化的参数,进行不同实例的数据初始化。下面的例子中,__init__方法...转载 2018-07-05 12:34:03 · 172 阅读 · 0 评论 -
python渐进---类2
原载于https://mp.weixin.qq.com/s/hkGdN9pDNAV69FierfJttQ13.4 类相关的术语类相关的术语有很多,这里总结一下。在前面的代码中,使用class IncClass()来定义一个类,IncClass叫做类(class);使用ic=IncClass()进行类的实例化,ic叫做实例,一个类可以有多个实例(instance);和类绑定的函数,叫做类函数(fun...转载 2018-07-05 12:33:54 · 1828 阅读 · 0 评论 -
python渐进---类1
原载于https://mp.weixin.qq.com/s/zMoPE8RrNTwf-s5cFvUTSw13.1 类的定义和使用python中使用class关键字来定义类。用类似"class classname():"的语句就可以定义一个类。下面的代码是一个简单的类定义:class IncClass(): n=5 print('initialize') def Incn...转载 2018-07-05 12:33:43 · 131 阅读 · 0 评论 -
模块
原载于https://mp.weixin.qq.com/s/5-VhYqQapJn2lfoe5nuuyQ模块是一个文件,它的文件名一般是"模块名.py"。包是一个目录,如果一个目录下面有一个"__init__.py"的文件,那么python就会认为这个目录是一个包。一个包目录下面可以放很多包目录,也可以放很多模块文件。这样模块文件就可以按照架构和逻辑放在不同的包目录下面,以便管理。函数把完成某个功...转载 2018-07-05 12:33:30 · 125 阅读 · 0 评论 -
python渐进---函数进阶篇
原载于https://mp.weixin.qq.com/s/ZAtsdG_6YS1D3OmyLBXRFg11.4 函数的嵌套、闭包以及函数传递在函数里面是可以嵌套函数的,下面的例子就在func1函数里面嵌套了appendl函数。def func1(): l=[] def appendl(a): l.append(a) appendl(1) appen...转载 2018-07-05 12:32:45 · 381 阅读 · 0 评论 -
python渐进---函数基本篇
原载于https://mp.weixin.qq.com/s/pdzW_KJW2SzNQdigosxa2g函数、模块、类,是组织代码的良好工具。实现某个功能的代码块可以通过函数集合在一起;拥有相似功能的代码块可以通过模块集中在某个目录某个文件里面;封装了某个面向对象的代码可以通过类来打包。有了这些代码组织工具,大型的软件工程和项目才能够条理清晰地被管理起来。这里就先从函数说起。11.1 函数的定义使...转载 2018-07-05 12:32:32 · 471 阅读 · 0 评论 -
python渐进---文件
原载于https://mp.weixin.qq.com/s/EMXNBAboSIu5nW0Xj5hEmQ文件操作是编程语言的一项重要能力。包括了文件的读写操作,文件以及目录的操作等。下面就逐一介绍。10.1 文件的打开在python中,使用open语句打开一个文件。演示的代码如下。f=open('myfile.txt','r')上述的语句当中,'myfile.txt'是文件的名称,f是获取到的文件...转载 2018-07-05 12:31:59 · 177 阅读 · 0 评论 -
python渐进---把代码放到文件里
原载于https://mp.weixin.qq.com/s/kCN6eAvUbA7g75OfSiTxgQ之前的代码片段都是在python解析器的交互界面进行的。为了能让python代码重复使用,需要把代码保存到一个文件中。以后就可以继续使用这些代码了。 9.1 代码文件的保存和运行代码文件的保存很简单,就是直接把之前敲过的代码一行行放到文件里面保存就可以了。下面的例子把一个print语句保存为he...转载 2018-07-05 12:31:45 · 1227 阅读 · 0 评论 -
python渐进---字符串的格式化
原载于https://mp.weixin.qq.com/s/q_FyBPYb_J6HBRS-8Yit7w7.5 string的格式化string支持对数据的格式化,使得字符串能够按照某种格式显示出来。格式化字符串在服务器后台开发中可能还常用一些,在命令行的模式下,只能通过string的格式化使得输出的内容显得更规整一些。在python中,string的format方法和系统的%操作都可以让stri...转载 2018-07-05 12:31:28 · 741 阅读 · 0 评论 -
python渐进---代码的运行环境
原载于https://mp.weixin.qq.com/s/j_dx9tp6xUqUee7XmxlfVQ9.3 代码的运行路径代码在运行的时候会有一个路径集合。所有运行的时候需要import的模块,打开文件的默认路径,都会从这个路径集合里面选取。这个路径集合包括了操作系统的PYTHONPATH变量和python的安装依赖的路径。而后当前代码文件的存放的路径会被添加进去,比如说有个test.py文件...转载 2018-07-13 09:12:55 · 400 阅读 · 0 评论 -
python渐进---线程
原载于https://mp.weixin.qq.com/s/9l-t0xX-0EZZ4PaZdRdPiw有时候代码在运行的时绝大多数时间都在等待。比如说拉取一个网页,需要等待服务器返回;比如说访问一个数据库,需要等待数据块被释放;比如说延时操作,需要等待一段时间再运行。而一般的python代码运行起来只有一个进程,所有的语句都是顺序执行的。这样就会很浪费时间。如果有三个操作分别耗时t1,t2,t3...转载 2018-07-13 09:13:59 · 159 阅读 · 0 评论 -
python渐进---正则模块
原载于https://mp.weixin.qq.com/s/5QsOyW8kcGHgDoI1iVKOHQ正则表达式是一种用来描述字符串结构的表达式。正则表达式一般由字符或者字符集,循环定义,群组定义组成的。8.1 字符和字符集1、正则表达式可以匹配所有的字符编码,常用的英文编码和unicode编码都可以。2、如果直接把字符列成串,那么就只能匹配这个字符串。如’abc’这个正则只能匹配’abc’,u...转载 2018-07-13 09:14:54 · 143 阅读 · 0 评论 -
python渐进---set集合
原载于https://mp.weixin.qq.com/s/SWfDYjsG_x9lJNMZ4IFo1A6.4 setset是集合类型,set存储的数据是不可重复的。相同的元素,在set里面只能够有一个。比如说[1,1,2,3]这个序列,存到set类型,就会变成[1,2,3]。6.4.1 set的建立用set()构造函数,可以把一个list或者tuple转化为set>>> s=s...转载 2018-07-04 14:57:44 · 114 阅读 · 0 评论 -
python渐进---dict字典
原载于https://mp.weixin.qq.com/s/u54b2DpHThvQXyJJ6H0lGgdict使用key:value对的形式来储存数据。dict在存储数据的时候更加直观,因为作为key的索引可以用更易理解的方式存在。list和tuple的索引是冰冷的数字,不知道哪个是哪个。任何不可变变量都可以用作key,像数字,字符串,上一节所说的tuple都是不可变变量,它们都可以作为key;...转载 2018-07-04 14:56:50 · 149 阅读 · 0 评论 -
python渐进---tuple
原载于https://mp.weixin.qq.com/s/HUGNM4FjFmMOQYsfMxqG4g6.2 tupletuple也叫元组,是一种和list类似的数据结构。tuple和list不同的是,tuple存储的元素不能被修改。python里面有可变变量和不可变的变量。它们的区别在于,可变变量所在内存空间的值可以被修改,而不可变变量所在的内存空间的值是不可以被修改的。下面介绍到tuple的...转载 2018-07-04 14:56:01 · 120 阅读 · 0 评论 -
python渐进---list列表
原载于https://mp.weixin.qq.com/s/cUQmsm68PLKWx1A1bfIOBQ6.1 listlist是这样的数据结构,它把数据存放在一个序列里面,在访问的时候按照数据的序号进行访问。本篇文章介绍list的使用。6.1.1 创建一个list创建一个list可以用中括号括起的逗号分隔的数据进行创建。演示代码如下。>>> a=[1,2,3,4]>&g...转载 2018-07-04 14:55:06 · 103 阅读 · 0 评论 -
python渐进---条件和循环控制语句
原载于https://mp.weixin.qq.com/s/J512SmQdBKiq5F8yABtAjQ使用条件控制和循环控制语句,可以使得代码的流程控制更丰富。使用条件控制语句,可以决定哪些代码需要执行,哪些不需要执行;而使用循环控制语句,可以控制哪一些代码需要多次执行。可以说条件语句和循环控制语句是使得代码能够更聪明的决定性因素了。下面就分别介绍条件控制语句if、循环控制语句for、条件循环相...转载 2018-07-04 14:54:11 · 185 阅读 · 0 评论 -
python渐进---高级运算
原载于https://mp.weixin.qq.com/s/X56wT_McmGUUHcDxANNJNw有时候我们需要进行更高级的运算,比如说指数函数的运算,三角函数的运算等等。这些运算通过使用math库可以实现。这里需要注意的是,math库的运算返回的都是float类型的二进制存储数。并且math库只支持整型和浮点型的数,不支持复数。复数的高级运算库可以使用cmath。4.1 自运算函数math...转载 2018-07-04 14:53:24 · 213 阅读 · 0 评论 -
精确的小数-decimal进阶
原载于https://mp.weixin.qq.com/s/fQVLYFyk4XyIT9ksiG8kUA上一篇文章中提到的decimal的一般用法。其实再深入一层思考,事情并没有这么简单。在小数运算过程当中,需要考虑的问题还有:用多少位来表示一个小数的有效数字?在超过有效数字位数的时候是直接丢掉最后一位还是四舍五入?比如说3.1415926,是想要用到小数后两位呢还是后三位呢?用后三位的话我用3....转载 2018-07-04 14:51:17 · 2685 阅读 · 0 评论 -
精确的小数-decimal初探
原载于https://mp.weixin.qq.com/s/jcgc7lgOIQgZmxzsiVPMUg2. 精确的小数二进制可以表示连续的整数,但是却不能够表示连续的小数。在计算机里面,一个数的小数部分用二进制来表示就是:s=a12-1+a22-2+...+an2-n其中 ai的取值是0或者1。 而 a1 a2... an这个序列就是小数s的二进制编码。要得到二进制编码,可以循环把s乘以22s=...转载 2018-07-04 14:49:49 · 2786 阅读 · 0 评论 -
python渐进---比较操作以及布尔运算
原载于https://mp.weixin.qq.com/s/Ybx4qciCSvPKQX5nywfdLw3.1 逻辑判断以及比较操作计算机也可以进行逻辑判断。在现实生活当中,有两种逻辑判断。一种是由常识而产生的逻辑判断。比如猪会飞;比如太阳每天会升起。在一般的常识当中,猪会飞是错误的,False;而太阳每天会升起是正确的,True。这些常识,计算机都不知道,需要通过变量的赋值来告诉它True还是F...转载 2018-07-04 14:52:24 · 482 阅读 · 0 评论 -
python渐进---时间模块
原载于https://mp.weixin.qq.com/s/XdEepnGaRgLN5KJzHTrtcgpython有两个模块可以处理时间相关的事务,一个是time模块,一个是datetime模块,这两个模块的功能高度重合。datetime唯一比time多一点的地方是有个timedelta类,可以指定时间间隔。19.1 time模块在操作系统内部,时间是以时间戳的方式来表示的,这个时间戳是一个十位...转载 2018-07-13 09:17:47 · 145 阅读 · 0 评论 -
python渐进---html和json解析
原载于https://mp.weixin.qq.com/s/uVlcqRFo_QngoQQ7rRhVfA从网络中取得一个文件后,就进入到了处理文件的阶段了。从网络取回的字节流,可能会是乱码。这个问题可能由两个原因产生。一个是在请求的时候,在http头中加入了accept-encoding域,比如说加入了“accept-encoding:gzip,deflate,sdch,br”。这样服务器就认为你...转载 2018-07-13 09:16:47 · 2871 阅读 · 0 评论 -
python渐进---访问网络文件
原载于https://mp.weixin.qq.com/s/aenGcyhUim7KQ2Ur_bAW6Apython有一些现成的类可以供网络文件的读取。比如urllib,urllib2以及httplib都可以。urllib在网络文件读取方面功能较少,无法修改http头,无法设置timeout,也无法进行proxy认证。urllib类里面可以使用的是对url字符串的处理函数,比如说生成url字符串,...转载 2018-07-13 09:15:55 · 1488 阅读 · 0 评论 -
python渐进---字符串
原载于https://mp.weixin.qq.com/s/8cdvlSUsIJn94TLNOkHclg字符串是常用的一种数据类型。在python里面,可以直接处理的字符类型有string和unicode。string类型存储的是单字节的字符流,string类型在处理字符串的时候是单个字节单个字节进行处理的,因此string类型可以表示的编码只有ascii编码,也就是我们常见的字母和数字、符号等字...转载 2018-07-05 12:31:10 · 143 阅读 · 0 评论