自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

若数的博客

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

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

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

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

2019-05-31 21:37:47 1250

原创 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 304

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

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

2019-05-29 21:56:10 1033

原创 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 1393

原创 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 213

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

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

2019-05-27 21:56:18 181

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

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

2019-05-26 21:42:57 347

原创 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 927

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

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

2019-05-24 22:06:46 2947 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 843

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

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

2019-05-22 21:35:59 487

原创 Python3之手动创建迭代器

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

2019-05-21 22:15:30 168

原创 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 2479 5

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

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

2019-05-19 22:20:38 1690

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

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

2019-05-18 23:33:45 1081

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

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

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

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

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

2019-05-16 21:21:07 2738 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 2954 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 1389 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 583

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

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

2019-05-12 22:01:55 1745

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

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

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

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

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

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

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

概述Python中的列表是简直可说是有容乃大,虽然看似类似C中的数组,但是Python列表可以接受任意的对象元素,比如,字符串,数字,布尔值,甚至列表,字典等等,自由度提升到一个新的高度,而Python也提供了大量列表相关的内置方法来有效操作列表:方法描述append将单个对象添加至列表末尾clear删除列表中所有项目copy列表的浅拷贝,参见上篇文章《P...

2019-05-09 22:06:16 1147

原创 Python列表赋值,复制,深拷贝以及5种浅拷贝详解

概述在列表复制这个问题,看似简单的复制却有着许多的学问,尤其是对新手来说,理所当然的事情却并不如意,比如列表的赋值、复制、浅拷贝、深拷贝等绕口的名词到底有什么区别和作用呢?列表赋值# 定义一个新列表l1 = [1, 2, 3, 4, 5]# 对l2赋值l2 = l1print(l1)l2[0] = 100print(l1)示例结果:[1, 2, 3, 4, 5][100,...

2019-05-08 23:52:47 3589 2

原创 python3切片使用方法及一些技巧介绍+leetcode题例

概述在Python中,字符串是定义为字符的有序集合,即我们可以像使用列表一样在字符串中自由翱翔-使用索引和切片操作字符串,比如通过指定的索引获取字符串某个位置的字符。# 示例字符串s = 'python str with slice'索引的简单使用在Python中字符串的索引可以是正数,正数即从左向右索引,索引从0开始,也可以是负数,负数即从右向左开始索引,索引从-1开始。如果超出了正...

2019-05-07 23:06:51 979 2

原创 总结:44个Python3字符串内置方法大全及示例

概述Python中字符串是作为一种强大的处理工具集的存在,而不是类C中使用的那么难受。因为Python提供了一系列字符串操作的方法,从大小写转换、切片操作到查找等等应有尽有,几乎满足日常的使用场景,当然如果满足不了需求还可以得助于更加强大的第三方库比如string,re等。下面就介绍了Python3中44个字符串内置方法的基本概述及简单示例。44个字符串内置方法概述方法描述...

2019-05-06 22:03:04 1117 3

原创 Flutter 基础布局Widgets之Expanded详解

Expanded概述Expanded是用于展开Row,Column或Flex的子child的Widget。 使用Expanded可以使[Row],[Column]或[Flex]的子项扩展以填充主轴中的可用空间(例如,水平用[Row]或垂直用[Column])。 如果扩展了多个子节点,则根据[flex]因子将可用空间划分为多个子节点。[Expanded]小部件必须是[Row],[Column]或...

2019-05-05 23:03:33 3004 3

原创 Flutter 基础布局Widgets之ConstrainedBox详解

概述ConstrainedBox即创建一个Widget,该Widget对其子child施加附加约束。之前在constrain也有简单使用,即该组件一般集成在constrain中使用。构造函数ConstrainedBox({ Key key, @required this.constraints, Widget child })constraints 其类...

2019-05-04 22:54:33 1996

原创 Flutter 基础布局Widgets之Align详解

概述一般来说,Align的使用都是其他控件的一个参数,目的是为了设置子child的对齐方式,比如居中,左上,右下等多个对齐方向,其本身用法也多灵活。构造函数const Align({ Key key, this.alignment = Alignment.center, this.widthFactor, this.heightFactor, Widg...

2019-05-03 22:07:56 531

原创 Flutter 基础布局Widgets之Baseline、AspectRatio详解

Baseline概述Baseline即根据child的baseline定位child的小部件,即使得不同的child都处在规定的基线位置,尤其是多用在文字排版中,比如使得不同大小的文字处于同一水平线。Baseline构造函数 const Baseline({ Key key, @required this.baseline, @required this.baseli...

2019-05-02 22:57:27 547

原创 Flutter 基础布局Widgets之Wrap详解

概述Wrap好似Row和Column的结合,在横轴的表现和Row一致,而竖轴的表现和Column一致,比如当’this.direction = Axis.horizontal’时,横轴()的child放置不下时就会在竖轴自动扩展一行。构造函数Wrap({ Key key, this.direction = Axis.horizontal, this.alignment...

2019-05-01 16:44:46 1659 2

空空如也

空空如也

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

TA关注的人

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