生活中,有时候我们需要对一些重要的文件进行加密,Python提供了诸如hashlib,base64等便于使用的加密库。但对于日常学习而言,我们可以借助异或操作,实现一个简单的文件加密程序,从而强化自身的编程能力。记得给公众号加个星标,不会错过精彩内容。基础知识在Python中异或操作符为:^,也可以记作XOR。按位异或的意思是:相同值异或为0,不同值异或为1。具体来讲,有四种可能:0^0=0,0^1=1,1^0=1,1^1=0。我们还可总结出规律(A为0或
系统 2019-09-27 17:54:26 1825
变量不是盒子在示例所示的交互式控制台中,无法使用“变量是盒子”做解释。图说明了在Python中为什么不能使用盒子比喻,而便利贴则指出了变量的正确工作方式。变量a和b引用同一个列表,而不是那个列表的副本>>>a=[1,2,3]>>>b=a>>>a.append(4)>>>b[1,2,3,4]如果把变量想象为盒子,那么无法解释Python中的赋值;应该把变量视作便利贴,这样示例中的行为就好解释了注意:对引用式变量来说,说把变量分配给对象更合理,反过来说就有问题
系统 2019-09-27 17:53:57 1825
用Python实现常规的静态网页抓取时,往往是用urllib2来获取整个HTML页面,然后从HTML文件中逐字查找对应的关键字。如下所示:复制代码代码如下:importurllib2url="http://mm.taobao.com/json/request_top_list.htm?type=0&page=1"up=urllib2.urlopen(url)#打开目标页面,存入变量upcont=up.read()#从up中读入该HTML文件key1='ke
系统 2019-09-27 17:53:24 1825
#0.PyCharm常用快捷键#1.查看使用库源码PyCharm主程序员在Stackoverflow上答道经常听人说,多看源码。源码不仅能帮我们搞清楚运行机制,还能学习优秀的库或者框架的最佳实践。调用库时,你可以在你好奇的几乎任何地方点击Command+B,就可以很方便的跳转到源码里的类,方法,函数,变量的定义。#2.让你的代码PEP8写Python代码时,你会严格遵守pep8规范么?还是要遵守的,不然代码传到github或者知乎上被人怼就不好了。但是如果
系统 2019-09-27 17:53:10 1825
python的循环编写程序时经常有代码需要重复运行,python提供了while和for进行循环操作。一、while循环1、while循环可以根据条件进行判断,决定是否要循环执行语句块,语法如下:循环条件后面也是要使用冒号,然后缩进写循环操作语句,先判断条件是否成立,如果为true,则执行循环操作语句,如果为false,则跳出循环。示例代码如下:count=0while(count<5):count=count+1print(count)#结果>>>5变量
系统 2019-09-27 17:52:20 1825
使用paramiko库:https://github.com/paramiko/paramiko简单封装SSH类importparamikoclassSSH:def__init__(self,host,port,user,ssh_key_path,timeout=1800):self.host=hostself.port=portself.user=userself.ssh_key_path=ssh_key_pathself.timeout=timeout
系统 2019-09-27 17:50:38 1825
最简单的网页取源(不用模拟浏览器的情况)1importrequests2defgetHTML(url):3try:4r=requests.get(url,timeout=30)5r.raise_for_status()6r.encoding='utf-8'7returnr.text8except:9return""10url="http://baidu.com"11print(getHTML(url))
系统 2019-09-27 17:50:19 1825
1.python中创建进程的两种方式:frommultiprocessingimportProcessimporttimedeftest_():print'-----test-----'if__name__=='__main__':p=Process(target=test_)p.start()whileTrue:print'--main--''''1.通过process类创建一个进程对象,然后start即可开启进程,testtest_函数是进程实现的功能
系统 2019-09-27 17:49:44 1825
Recursivearticles(递归篇)Feibosequencedeffib(number):ifnumber==0ornumber==1:returnnumberelse:returnfib(number-1)+fib(number-2)foriinrange(8):print("fib(%2d)=%2d"%(i,fib(i)))Wecancontrolthetimeofthefunction.deffib(number):ifnumber==0o
系统 2019-09-27 17:48:41 1825
前言其实有一个模块也支持执行系统命令,那个模块就是sys.system,但他执行系统命令会直接通过主进程去执行命令,那假如,该命令的执行需要耗费一个小时,那么主进程会卡一个小时,而不会去干别的事,这样就会导致程序的运行效率低下。如果由subprocess去执行系统命令的时候并不会让主进程去执行,而是主进程会开辟出一个子进程去执行,并不会影响到主进程的运行,主进程该干嘛就干嘛,那么又有个问题,大家都知道进程之间的内存空间是独立的,也就是说进程之间是不能相互访
系统 2019-09-27 17:47:47 1825