![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 75
北落师门XY
这个作者很懒,什么都没留下…
展开
-
PDF解析
PDF是一种查看方便但解析起来非常不方便的工具,不理解为什么到现在还没对这个问题从源头优化一下。对PDF文件的解析,一般分成对pdf文本等内容的解析、将pdf转化成图像再解析这两种。一、pdf 解析文本 公认比较好用的pip库是pdfplumber,此外fitz也可以,经费够可以调pdflux这种服务商。fitz仅处理文本,pdfplumber还可以处理表格。1.1 pdfplumber解析文本 PDFPlumber是基于 PDFMiner 构建...原创 2022-03-28 11:54:45 · 7507 阅读 · 0 评论 -
PYTHON中基于OPENCV进行图像压缩
JPG的图像是有损压缩的,有时场景需要人为地对图像进行压缩。例如:显存溢出时进行cv2.resize操作,减小输入图像尺寸;当图像文件大小太大时,例如超过了上限10M,这时可以通过控制图像质量的方式压缩像素所占字节大小。基本知识:RGBA:A(Alpha)指图像的透明和半透明度,1位存储时表示透明或不透明,多位存储时表示不同的透明度位深度:单个像素单个通道所占比特数,常见为8bit,0-255范围色深:单个像素所有通道所占比特数,常见为3*8=24情况一:cv2....原创 2022-03-15 15:07:25 · 9665 阅读 · 0 评论 -
Python字符串匹配——正则严格匹配&fuzzywuzzy模糊匹配
match、search、findall、finditer简单介绍菜鸟教程有个入门的教程:https://www.runoob.com/python/python-reg-expressions.html重叠区域匹配原创 2021-05-25 16:54:18 · 8292 阅读 · 0 评论 -
Python连接字符串
print('y', end='')print('j')print('####')print('y'+'j')print('####')print('{}{}yj'.format('y','j'))print('####')a=['y','j']print(''.join(a))连接字符串可以用1)+ 2)format 3)join 4)end连接地址习惯用format...原创 2018-09-08 21:50:38 · 133 阅读 · 0 评论 -
python模块——os模块、 shutil模块、time模块、datetime模块
OS模块路径os.getcwd()#当前工作目录,相当于pwdos.chdir('.')#进入目标路径os.path.split(os.path.realpath('.'))#拆分文件夹及文件名os.path.join('.','new')#组合路径os.path.dirname(os.path.realpath('.'))#返回路径中的文件夹部分os.path.basename...原创 2018-10-06 01:02:38 · 247 阅读 · 0 评论 -
open模式——r/w/a/b
原始文件内容:ewrdad sfsfdfa模式 说明 code & result r 只读 with open('trytext.txt','r')as f: data=f.readlines() print(data) print(data[0]) ['ewrdad sf\n', 'sf\n', 'dfa...原创 2018-10-06 01:19:07 · 2258 阅读 · 0 评论 -
python处理excel表格
0.背景我们常说的excel文件有两种格式,xls和xlsx(更高版本)。xls使用xlwt及xlrd库xlsx使用xlsxwriter及openpyxl 1.创建一张表的一个sheetbook = xlwt.Workbook() # 创建excel文件sheet = book.add_sheet(sheetname) # 创建一个表sheet.write(0, 0...原创 2018-12-01 15:10:39 · 509 阅读 · 0 评论 -
numpy库的使用
初始化输入 以下均基于已进行import numpy as npzerosZ = np.zeros((3,3))Z[1][1]=1Z[1,2]=999print(Z,end='\n\n')print(Z[1],end='\n\n')print(Z[:,2])[[ 0. 0. 0.][ 0. 1. 999.][ 0. 0. ...原创 2018-12-03 18:42:38 · 1384 阅读 · 1 评论 -
数据可视化——基于matplotlib库
以下示例都基于进行了import操作import matplotlib.pyplot as plt 常用函数plt.plot(x,y,, color='green', marker='o', linestyle='dashed', linewidth=2, markersize=12,alpha=0.2,label='line')参数:自变量,因变量,颜色,点样式,线类型,线宽...原创 2019-01-04 22:40:13 · 388 阅读 · 0 评论 -
pandas库的使用——用于数据清洗、表格文件存取
简介pandas是基于numpy的库,一维数据用Series,二维数据用DataFrame,以下所有例子都基于#基本操作一维初始化及按行索引a=Series([1,2,3])#默认索引从0开始b=Series([1,2,3],index=['a','b','c'])#可设置索引c=Series({'a':1,'b':2,'c':3})#可结合字典# print(c.keys...原创 2019-01-23 17:46:53 · 492 阅读 · 0 评论 -
牛客网Python笔试技巧
提高通过率大原则:1.本地IDE调代码的速度更快2.修改已>0%的代码比新做一道题更快3.一定要看清题意!!!提高通过率的技巧:1.时间复杂度问题:增加条件break或continue出循环,能break尽量break; 减少不必要的判断条件(比如在不在字典中); ...原创 2018-09-08 21:19:29 · 5320 阅读 · 1 评论 -
raw文件与jpg文件的读取/转换/显示
⚠️cv2中为bgr,而matplotlib/imageio中为rgb⚠️基本上基于np和cv2就可以实现了注:.jpg到.raw 使用.tofile实现,图上忘写了#jpg---rawimport cv2import numpy as nprgbimg=cv2.imread('rgb.jpg')print(rgbimg.dtype)#np.uint8imgshape...原创 2018-09-05 22:16:38 · 6356 阅读 · 11 评论 -
python应用——邻接Graph类实现公交换乘系统
一、题目要求参考提供论文,用书上方式(邻接Graph类或压缩方式)实现问题的解决,将论文中的4路公交换成10路公交,自设连通方式,求解任意公交站点能否换乘?二、思路 用10*10的矩阵表示公交站之间能否换乘,在原始矩阵中用1代表两路公交经过1次即可换乘,0代表两路公交无共同停靠点。不断做矩阵乘法,比较经过换乘后的矩阵与换乘前有何不同,与原始论文用“1*代表换乘后可连通”的设定不同的是:我采用...原创 2018-06-28 11:04:27 · 1138 阅读 · 0 评论 -
python应用——最小生成树实现旅行商问题
一.题目要求 用最小生成树结合所提供的论文解决旅行商问题。二.思路分析Step1:用Prim算法生成最小生成树Step2:根据最小生成树中各边的权重及各点的度,从大到小对最小生成树进行剪枝操作,使各点的度为0或1。这个功能在程序中使用函数jianzhi实现的。Step3:将剪枝的结果连接成环,这个功能在程序中使用cicle函数实现。需要分为3步:第一步:连接度为0的孤立点,使各点的度大于0,...原创 2018-06-28 11:05:38 · 3349 阅读 · 3 评论 -
python应用——AVL实现商品库动态平衡
一.题目要求 根据AVL对商品进行动态平衡问题二.设计思路应用设计思路:为方便对商品库问题进行模拟,同时在运行时提示用户“输入新的搜索词”及提示管理员是否需要增删库中商品,每修改一次AVL树,输出一次当前的AVL树,形式为:商品名称 树中的高度 左节点名称 右节点名称(如缺少左/右节点,用None代替),初始设置为: 库中默认商品包含在number_list中,建立的AVL树为tree,ol...原创 2018-06-28 11:08:19 · 312 阅读 · 0 评论 -
python应用——游戏地图最短路径
一.题目要求参考下图完成游戏地图中从起点到目标点的最短路径寻找问题。 二.设计思路先对游戏地图做了几个设定,以矩阵来模拟游戏地图。将可行的区域位置赋值0,障碍区赋值为inf。考虑到地图大小,将起始点和终点区域赋值99。从Start点A开始向外层扩展,每扩展一层pathlen加一。List Q存储当前需要扩展的点,list P 存储当前扩展层。当扩展到End点B时扩展结束,路径可规划。当Q为空时,...原创 2018-06-28 11:11:28 · 3023 阅读 · 1 评论 -
python应用——基于回溯算法的计算机机箱线路板排列问题
一.题目要求基于回溯算法的计算机机箱线路板排列问题:对于给定线路板连接条件(连接块),确定线路板的最佳排列,使其具有最小的密度。初始线路板及连接块为: 二.设计思路问题分析: 从排列问题的角度出发,在8个位置插入8块线路板,共有8!种方法,将问题转化为排列树的问题。根节点为空,第一层为空的根节点,共有8个儿子节点;第二层共8个节点,每个节点有7个儿子节点;第三层每个节点有6个儿子节点。。。...原创 2018-06-28 11:13:25 · 628 阅读 · 0 评论 -
python——=、copy、deepcopy
程序:import copyclass ListNode(): def __init__(self,value=None): self.val=value self.next=Nonea=ListNode(3)e=ListNode(33)f=ListNode(333)a.next=eb=a # 用=做赋值可以看做b是a的别...原创 2018-07-03 16:42:13 · 144 阅读 · 0 评论 -
快速排序
一、算法复杂度平均时间复杂度:O (nlogn)快速排序最差时间复杂度:O( n^2 )快速排序最优空间复杂度:O(logn) ;每一次都平分数组的情况快速排序最差空间复杂度:O( n ) ;退化为冒泡排序的情况 冒泡排序时间复杂度:O(n²)二、快速排序程序算法的思想是在指定区间内找到需要排序的元素最左端值(作为key)的适当插入位置,将key两边分治处...原创 2018-07-19 15:10:31 · 122 阅读 · 0 评论 -
生成器generator
定义 如果列表元素可以按照某种算法推算出来,在循环的过程中不断推算出后续的元素呢,一边循环一边计算。优点1.节省内存空间用()创建generator用()代替列表生成式的[]g=(x*x for x in range(10))for i in g: print(i,end=' ')运行结果:0 1 4 9 16 25 36 49 64 81 ...原创 2018-07-28 21:52:54 · 217 阅读 · 0 评论 -
python2与python3的区别
说明:标注?????是暂时没遇到且看不懂的,做个标记。常见的区别有print,range,open,模块改名,input,整除/,异常 except A as B为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下相容。过渡版本Python2.6基本使用了Python 2.x的语法和库,同时考虑了向Python 3.0的迁移,允许使用部分Python 3.0的语法与函数。目录...原创 2018-07-29 11:48:12 · 2484 阅读 · 0 评论 -
闭包
1.闭包定义 外函数中定义内函数,内函数运用外函数的临时变量,外函数返回值是内函数的引用。构成了一个闭包。 (内函数+外函数的临时变量)2.引用与地址 地址?有没有括号?引用,即存地址。举个例子:a=1,内存中有个地方存了1,用变量名a存1所在内存位置的引用/地址。函数名后无括号——表示地址/引用函数名后有括号——表示调用函数3.闭包存在的理由函数...原创 2018-07-27 22:56:24 · 183 阅读 · 0 评论 -
python中的遍历
一、测试文件夹及文件 二、代码import osprint('solution 1多层次遍历路径##############')res_dir=os.path.abspath(os.path.dirname(__file__))for root, dirs, files in os.walk(res_dir): print('root',root) p...原创 2018-08-26 15:20:39 · 9502 阅读 · 1 评论 -
python应用——分治法实现循环赛
一.要求用分治法实现循环赛:一共有n个选手要进行循环赛,请设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他n-1个选手各赛一次;(2)每个选手一天只能赛一次;(3)当n是偶数,循环赛进行n-1天,当n是奇数,循环赛进行n天。按分治策略,将所有的选手分为两半,n个选手的比赛日程表就可以通过为n/2个选手设计的比赛日程表来决定。递归地用对选手进行分割,直到只剩下2个选手时,比赛日程表的制...原创 2018-03-10 20:34:40 · 4695 阅读 · 2 评论