图片来源于网络文/Python高效编程生活中,有时候我们需要对一些重要的文件进行加密,Python提供了诸如hashlib,base64等便于使用的加密库。但对于日常学习而言,我们可以借助异或操作,实现一个简单的文件加密程序,从而强化自身的编程能力。记得给公众号加个星标,不会错过精彩内容。基础知识在Python中异或操作符为:^,也可以记作XOR。按位异或的意思是:相同值异或为0,不同值异或为1。具体来讲,有四种可能:0^0=0,0^1=1,1^0=1,1
系统 2019-09-27 17:48:56 2444
经常看到朋友圈或者空间里有朋友发布照片时,将朋友圈的照片切分为九宫格,参考了一些大神的博客资料,现整理如下;将图片分拆成九宫格的思路:读取图片->填充图片为正方形(fill_image函数)->将图片切分为9张(cut_image函数)->保存图片(save_image)->over代码实现如下:fromPILimportImageimportsys#将图片填充为正方形deffill_image(image):width,height=image.size
系统 2019-09-27 17:47:38 2444
有时候经常看到python代码中含有if__name__=='__main__'的代码,但是却一直不知道是什么意思,可以通过相应的代码去试验即可知道其作用。一、理解我们知道每个python文件既可以被直接执行,则可以作为脚本导入到其他文件中。从而构建各个模块的联系。而if__name__=='__main__'的作用也是用来区分是自己作为自己的文件进行执行的,还是被导入到其他文件当做脚本使用。为了更好的区分,看如下例子:步骤一:新建一个文件为:test.p
系统 2019-09-27 17:47:33 2444
一个模块可以在逻辑上组织Python代码。将相关的代码到一个模块中,使代码更容易理解和使用。模块是可以绑定和借鉴任意命名属性的Python对象。简单地说,一个模块是由Python代码的文件。一个模块可以定义函数,类和变量。模块还可以包括可运行的代码。例子:Python代码的模块名为aname通常位于一个名为aname.py。下面是一个简单的模块,support.py作为例子defprint_func(par):print"Hello:",parreturn
系统 2019-09-27 17:46:33 2444
目的将一些小的字符串合并成一个大字符串,更多考虑的是性能方法常见的方法有以下几种:1.使用+=操作符复制代码代码如下:BigString=small1+small2+small3+...+smalln例如有一个片段pieces=['Today','is','really','a','good','day'],我们希望把它联起来复制代码代码如下:BigString=''foreinpieces:BigString+=e+''或者用复制代码代码如下:impor
系统 2019-09-27 17:38:00 2444
一、游戏玩法介绍:24点游戏是儿时玩的主要益智类游戏之一,玩法为:从一副扑克中抽取4张牌,对4张牌使用加减乘除中的任何方法,使计算结果为24。例如,2,3,4,6,通过(((4+6)-2)*3)=24,最快算出24者剩。二、设计思路:由于设计到了表达式,很自然的想到了是否可以使用表达式树来设计程序。本程序的确使用了表达式树,也是程序最关键的环节。简要概括为:先列出所有表达式的可能性,然后运用表达式树计算表达式的值。程序中大量的运用了递归,各个递归式不是很复
系统 2019-09-27 17:56:11 2443
插入排序Python实现importrandoma=[random.randint(1,999)forxinrange(0,36)]#直接插入排序算法definsertionSort(a):foriinrange(1,len(a)):#若下标为i的元素小于下标为i-1的元素,则将下标为i的元素放到合适位置ifa[i]=0andtm
系统 2019-09-27 17:55:38 2443
如题:这里使用的简单思路就是以此从前往后遍历,每一次遇到第一个为0的数的位置为i,就新建一个指针为j=i+1紧临着当前位置,然后再滑动j指针,寻找非零的数,期间需要对剩余部分全部是0或者数组全部为非0数做一个边界条件的判断:Python实现:list=[1,0,23,4,0,4,0,5,6,0,4,3,0,0]i=0while(i
系统 2019-09-27 17:55:28 2443
Python函数编程——递归求100不断除以2直到商为0为止,打印每次除的商用循环实现:n=100whilen>0:n=int(n/2)print(n)输出:5025126310如果用函数,如何实现呢?defcalc(n):n=int(n/2)print(n)ifn>0:calc(n)#调用自己calc(100)在函数内部,可以调用其他函数。如果一个函数在内部调用自已本身,这个函数就叫做递归函数。上面我们写的这个代码就是递归。递归的执行过程defcalc(
系统 2019-09-27 17:54:57 2443
其实前面程序中的高亮显示已经是动画效果了。程序会用红色、黄色交替显示几何图形的边框,这样看上去就是动画效果了。实现其他动画效果也是这个原理,程序只要增加一个定时器,周期性地改变界面上图形项的颜色、大小、位置等选项,用户看上去就是所谓的“动画”了。下面以一个简单的桌面弹球游戏来介绍使用Canvas绘制动画。在游戏界面上会有一个小球,该小球会在界面上滚动,遇到边界或用户挡板就会反弹。该程序涉及两个动画:小球转动:小球转动是一个“逐帧动画”,程序会循环显示多张转
系统 2019-09-27 17:50:19 2443
python提供了一个struct模块来提供转换。下面就介绍这个模块中的几个方法。struct.pack():struct.pack用于将Python的值根据格式符,转换为字符串(因为Python中没有字节(Byte)类型,可以把这里的字符串理解为字节流,或字节数组)。其函数原型为:struct.pack(fmt,v1,v2,...),参数fmt是格式字符串,关于格式字符串的相关信息下面有所介绍。v1,v2,...表示要转换的python值。下面的例子将两
系统 2019-09-27 17:48:29 2443
单位收集了很多word格式的调查表,领导需要收集表单里的信息,我就把所有调查表放一个文件里,写了个python小程序把所需的信息打印出来#coding:utf-8importosimportwin32comfromwin32com.clientimportDispatch,constantsfromdocximportDocumentdefparse_doc(f):"""读取doc,返回姓名和行业"""doc=w.Documents.Open(FileNa
系统 2019-09-27 17:38:31 2443
点击上方“何俊林”,马上关注,每天早上8:50准时推送真爱,请置顶或星标近日,有朋友向我求助一件小事儿,他在一个短视频app上看到一个好玩儿的段子,想下载下来,可死活找不到下载的方法。这忙我得帮,少不得就抓包分析了一下这个app,找到了视频的下载链接,帮他解决了这个小问题。因为这个事儿,勾起了我另一个念头,这不最近一直想把python爬虫方面的知识梳理梳理吗,干脆借机行事,正凑着短视频火热的势头,做一个短视频的爬虫好了,中间用到什么知识就理一理。我喜欢把事
系统 2019-09-27 17:57:10 2442
除了在Matlab中使用PRTools工具箱中的svm算法,Python中一样可以使用支持向量机做分类。因为Python中的sklearn库也集成了SVM算法,本文的运行环境是Pycharm。一、导入sklearn算法包Scikit-Learn库已经实现了所有基本机器学习的算法,具体使用详见官方文档说明:http://scikit-learn.org/stable/auto_examples/index.html。skleran中集成了许多算法,其导入包的
系统 2019-09-27 17:55:49 2442
Python翻译成汉语是蟒蛇的意思,并且Python的logo也是两条缠绕在一起的蟒蛇的样子,然而Python语言和蟒蛇实际上并没有一毛钱关系。Python语言是由荷兰程序员GuidovanRossum,江湖人称“龟叔”,独立开发完成初版的。“龟叔”曾供职于google,现任职于dropbox。1989年圣诞节期间,在阿姆斯特丹,为了打发圣诞节的无趣,决心开发一个新的脚本解释语言,作为ABC语言的一种继承,然后他就这么做了,并实现了(大神的能力)。之所以选
系统 2019-09-27 17:55:12 2442