自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Python 数据结构之 堆、栈

堆和栈都是数据项按序排列的数据结构,栈是一种后进先出的数据结构,而堆是一种二叉树。 在讲解堆栈之前,先说下队列。 一、队列 (1)队列的概念 队列是一种列表,但是队列只能在队尾加入元素,队首删除元素(就跟排队是一个道理);由此看来,队列和栈刚好相反,是 先进先出(FIFO)。 (2)Python语...

2020-02-16 17:07:20

阅读数 20

评论数 0

原创 Python 进程、线程、协程(multiprocessing、threading)详解

在Python中多任务的实现方式为: 1、多进程 2、多线程 3、协程 4、多进程+多线程 一、多任务原理 多任务:操作系统可以同时完成多个任务 单核CPU多任务原理:单个cpu核心轮流的执行各个程序,但是切换的速度非常快导致表面上看是同时在执行 多核CPU多任务原理:真正的实现多任务,但是任务的...

2020-02-15 18:28:22

阅读数 8

评论数 0

原创 python之KMP算法(原理详解)

KMP算法其实就是字符串匹配的一种高效算法,通常称作模式匹配; 本文结构如下: 一、朴素的匹配算法 1、匹配的概念 2、朴素算法原理 3、代码实现 二、KMP算法 1、KMP算法简介 2、KMP算法原理详解 3、求出next()函数 4、代码示例 一、朴素的匹配算法 1、匹...

2020-01-20 21:31:30

阅读数 16

评论数 0

原创 python 数据结构之线性表---顺序表、链表

线性表是一种简单的数据结构,按照其储存方式,分为顺序表和链表。 顺序表和链表的特点如下: 顺序表的操作 顺序表 L 的基本操作为: clear(L) 置空 length(L) 求表中元素的个数 insert(L,i,x) 插入新元素 ...

2020-01-17 15:33:28

阅读数 17

评论数 0

原创 python之groupby()函数

itertools模块提供了内置函数groupby()能够方便的对数据进行分组,groupby(iterable, key=None)会对iterable生成的连续项进行分组,在分组的过程中会查找重复项,重复项会被定义为一组。 函数最终会返回一个迭代器,其生成的元素为(key, group),其中...

2020-01-15 11:39:56

阅读数 12

评论数 0

原创 python之itemgetter()函数

operator模块中的itemgetter()函数,是获取对象指定域中的值 >>> from operator import itemgetter >>> a = [1,2,3,4,5] >>> b = itemgetter(0) >&...

2020-01-15 10:26:54

阅读数 23

评论数 0

原创 python之zip()函数

zip(*iterables)函数时python的内置函数,其作用是将可迭代对象聚合在一起,并返回一个元组迭代器 示例1: >>> x = ["a","b","c"] >>> y = [1,2,3] &...

2020-01-15 09:34:11

阅读数 13

评论数 0

原创 python中的*args、**kwargs用法

在python中经常会遇见参数时*args与**kwargs的情况,其作用就是在搜集与分配参数。 1、序列解包 在python中,可以通过如下情况进行赋值: a,b,c = [1,2,3] 此时等号左右两边的元素个数必须保持一致,如果不一致就会报错。 使用运算符星号( * )收集多余的值 >...

2020-01-10 15:59:11

阅读数 7

评论数 0

原创 python基础之heapq模块(堆模块)

堆是一种数据结构,本质上是一种二叉树。在python中可以使用heapq模块实现,heapq可以实现一个简单的优先级队列。 一、堆的性质 堆分为小根堆与大根堆,小根堆的第一个元素可以理解为数值最小的元素,大根堆则相反,以下以小根堆为例 在堆的插入和删除过程中,小根堆要保持其性质,即父节点...

2020-01-10 10:15:17

阅读数 10

评论数 0

原创 python基础之列表(list)

列表是python的一种内置数据结构,是可以修改的;本文总纲如下: 一、list函数 函数list能够创建列表,比如可以将字符串或元组创建为列表,任何序列都可以作为list的参数 代码示例: 二、基本操作 (1)直接赋值 直接赋值可以修改索引对应的元素值 代码示例: (2)删除 使用del进行...

2020-01-08 18:17:09

阅读数 11

评论数 0

原创 python基础之eval函数与exec函数

函数exec与eval都可以将字符串作为代码执行 (1)eval(expression[, globals[, locals]]) expression实参是一个字符串,以及可选的 globals 和 locals。globals 实参必须是一个字典。locals 可以是任何映射对象。 代码示例1...

2019-12-05 23:16:48

阅读数 10

评论数 0

原创 python基础之dict函数

dict函数是python的内置函数 其主要作用是从其他映射或键-值对序列创建字典 示例代码如下: item_1 = [("a",1),("b",2)] d1 = dict(item_1) print(d1) #{'a': 1, ...

2019-12-04 22:18:28

阅读数 12

评论数 0

原创 python 爬虫学习笔记(三)--- 模拟浏览器登陆(Selenium与chromedriver实现)

前言: 模拟登陆的方法有很多,自己最近也学习了很多登陆的方法,但随着现在网站反爬的加强,在网上以及书上看到的很多办法都已经失效。自己的js水平以及网络基本知识的欠缺,在模拟登陆这一块学习的始终不尽人意。 好在使用Selenimu模拟登陆比较简单粗暴,能够成功登陆一些网站。虽然它的速度较慢,但也足以...

2019-11-29 21:55:48

阅读数 17

评论数 0

原创 python 爬虫学习笔记(二)--- Beutifulsoup 解析页面(find/find_all)

前言 通过发送get请求会返回一个response对象,其实就是一个HTML文件,运用BeautifulSoup可以对文件进行解析。 图解原理 运用Beautifulsoup解析页面 对于如何解析HTML页面,其实核心就是两点: 1、定位 2、获取目标内容 当然除了BeautifulSoup,还...

2019-11-20 17:35:55

阅读数 24

评论数 0

原创 python 爬虫学习笔记(一)--- requests获取网页源代码(get请求 post请求区别)

python的requests库可以发起的http请求有如下几种: PUT DELETE HEAD OPTIONS GET POST GET与POST是两种较常使用的请求,也是主要的获取网页源代码的方式。其对比如下: (Ⅰ)使用GET方式访问网页 ...

2019-11-19 16:12:35

阅读数 43

评论数 0

原创 python 字典浅拷贝(copy)与深拷贝(deepcopy)

关于python里面字典的复制,基本有以下三种情况: 直接赋值 使用copy() 使用deepcopy() 1、直接赋值 a = {"g":(1,3),"h":[1,1,2]} b = a b["g"] = "a"...

2019-11-07 13:29:07

阅读数 21

评论数 0

原创 用pyuic5将.ui文件转化为.py文件(处理one input ui file must be specified报错)

用cmd将.ui文件转换为.py文件 开始菜单打开运行,输入cmd 在命令行中输入形如: pyuic5 -o E:xxx\xxx\xxx.py E:xxx\xxx\xxx.ui 其中分别指代你要生成的.py文件的路径和储存.ui文件的路径 然后回车,结果报错 最终解决办法...

2019-10-17 00:23:18

阅读数 25

评论数 0

原创 python 类的命名空间(关于类中self的理解)

python 类的命名空间 最近自学python,学习到类,碰到一个很有意思的问题。因为自己是从小白自学,所以弄懂这个知识点花费了一定的时间。下面分几类情况分别讨论 第一段代码如下: class Members(): member = 0 m1 = Members() m2 = Member...

2019-10-14 10:52:47

阅读数 22

评论数 0

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