Python引入了一个机制:引用计数。引用计数python内部使用引用计数,来保持追踪内存中的对象,Python内部记录了对象有多少个引用,即引用计数,当对象被创建时就创建了一个引用计数,当对象不再需要时,这个对象的引用计数为0时,它被垃圾回收。总结一下对象会在一下情况下引用计数加1:1.对象被创建:x=42.另外的别人被创建:y=x3.被作为参数传递给函数:foo(x)4.作为容器对象的一个元素:a=[1,x,'33']引用计数减少情况1.一个本地引用离
系统 2019-09-27 17:45:58 1890
1.能调用方法的一定是对象,比如数值、字符串、列表、元组、字典,甚至文件也是对象,Python中一切皆为对象。str1='hello'str2='world'str3=''.join([str1,str2])print(str3)2.三种基本的文件操作模式:r(only-read)、w(only-write)、a(append)对文件进行操作的流程:第一,建立文件对象。第二,调用文件方法进行操作。第三,不要忘了关闭文件。(文件不关闭的情况下,内容会放在缓存
系统 2019-09-27 17:38:34 1890
大家请注意:这篇文中假设我们都用的是Python31.列表推导式你有一个list:bag=[1,2,3,4,5]现在你想让所有元素翻倍,让它看起来是这个样子:[2,4,6,8,10]大多初学者,根据之前语言的经验会大概这样来做bag=[1,2,3,4,5]foriinrange(len(bag)):bag[i]=bag[i]*2但是有更好的方法:bag=[elem*2foreleminbag]很简洁对不对?这叫做Python的列表推导式。2.遍历列表继续,
系统 2019-09-27 17:38:30 1890
什么是twisted?twisted是一个用python语言写的事件驱动的网络框架,他支持很多种协议,包括UDP,TCP,TLS和其他应用层协议,比如HTTP,SMTP,NNTM,IRC,XMPP/Jabber。非常好的一点是twisted实现和很多应用层的协议,开发人员可以直接只用这些协议的实现。其实要修改Twisted的SSH服务器端实现非常简单。很多时候,开发人员需要实现protocol类。一个Twisted程序由reactor发起的主循环和一些回调
系统 2019-09-27 17:38:27 1890
前言在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。可变参数(*)可变参数,顾名思义,它的参数是可变的,比如列表、字典等。如果我们需要函数处理可变数量参数的时候,就可以使用可变参数。我们在查看很多Python源码时,经常会看到某函数(*参数1,**参数2)这样的函数定义,这个*参数和**参数就是可变参数,一时会让
系统 2019-09-27 17:38:26 1890
我们将要来学习python的重要概念迭代和迭代器,通过简单实用的例子如列表迭代器和xrange。可迭代一个对象,物理或者虚拟存储的序列。list,tuple,strins,dicttionary,set以及生成器对象都是可迭代的,整型数是不可迭代的。如果你不确定哪个可迭代哪个不可以,你需要用python内建的iter()来帮忙。>>>iter([1,2,3])>>>iter({1:2,2:4})>>>iter(1234)Traceback(mostrece
系统 2019-09-27 17:38:24 1890
本来是想写一个东西可以直接调用TortoiseSVN保存当前代码到一个分枝下的。可惜调用SVN的部分还在研究。就先写了目录拷贝的部分。如果有喜欢研究Python的童鞋愿意提供想法或者建议的话,这里先谢谢了。:)就目录拷贝的部分,思想很简单。读配置文件中的配置信息。生成一个项目名称加日期时间组成的文件夹名为分枝名称。把当前项目下的全部内容拷贝到这个目录下。然后要做的研究就是调用TortoiseSVN命令嵌入这部分代码。现在看代码:1.读取配置文件配置文件很简
系统 2019-09-27 17:38:23 1890
在Python整型对象所存储的位置是不同的,有一些是一直存储在某个存储里面,而其它的,则在使用时开辟出空间.说这句话的理由,可以看看如下代码:a=5b=5aisb#Truea=500b=500aisb#False由上面的代码可知,整型5是一直存在的,而整型500不是一直存在的.那么有哪些整数是一直存储的呢?a,b,c=0,0,0whileaisb:i+=1a,b=int(str(i)),int(str(i))else:print(i)#打印257由上所知,
系统 2019-09-27 17:38:22 1890
前言随着站点的增多,管理复杂性也上来了,俗话说:人多了不好带,我发现站点多了也不好管,因为这些站点里有重要的也有不重要的,重要核心的站点当然就管理的多一些,像一些万年都不出一次问题的,慢慢就被自己都淡忘了,冷不丁那天出个问题,还的手忙脚乱的去紧急处理,所以规范的去管理这些站点是很有必要的,今天我们就做第一步,不管大站小站,先统一把监控做起来,先不说业务情况,最起码那个站点不能访问了,要第一时间报出来,别等着业务方给你反馈,就显得我们不够专业了,那接下来我们
系统 2019-09-27 17:38:21 1890
想必很多初次接触python都会见到这样一个语句,if__name__=="__main__":那么这个语句到底是做什么用的呢?在解释之前,首先要声明的是,不管你是多么小白,你一定要知道的是:1.python文件的后缀为.py;2..py文件既可以用来直接执行,就像一个小程序一样,也可以用来作为模块被导入(比如360安全卫士,就是依靠一个个功能模块来实现的,好比360安全卫士本身框架是一个桌面,而上面的图标就是快捷方式,这些快捷方式所指向的就是这一个个功能
系统 2019-09-27 17:38:10 1890