定义使用内置的defaultdict我们可以很容易的定义一个树形数据结构deftree():returndefaultdict(tree)example:json风格users=tree()users['harold']['username']='bell'users['handler']['username']='master'我们可以使用print(json.dumps(users))以json的形式输出,于是我们看到{'harold':{'usern
系统 2019-09-27 17:47:35 2254
先看之前写的代码:i=0defhhh():globaliprint(i)ifi==3:returnii=i+1hhh()print(hhh())结果应该输出01233但实际却是:0123None这是为什么呢?首先,Return的用法,调用函数的时候,如果没有执行return命令(或return命令未接收数据),默认会返回none这里if判断生效,确定应该执行了return命令,也接收到了全局变量i,但为什么结果和预想不一样呢?这里主要是由于函数递归的使用导
系统 2019-09-27 17:47:32 2254
定义在函数内的变量就是局部变量,只能在函数内使用,不能在函数外使用定义在函数外的变量就是全局变量,可以在全范围使用,可以在函数内使用使用global关键字的比较a='ilovechian'defone():globala#声明a是全局变量a='iliveinchian'#不声明时,a是one函数的局部变量one()print(a)嵌套函数调用父函数的变量需nonlocaldefpri():a='ilovechian'#pri函数的局部变量defone():
系统 2019-09-27 17:46:40 2254
一、死锁简单来说,死锁是一个资源被多次调用,而多次调用方都未能释放该资源就会造成死锁,这里结合例子说明下两种常见的死锁情况。1、迭代死锁该情况是一个线程“迭代”请求同一个资源,直接就会造成死锁:importthreadingimporttimeclassMyThread(threading.Thread):defrun(self):globalnumtime.sleep(1)ifmutex.acquire(1):num=num+1msg=self.name
系统 2019-09-27 17:46:39 2254
一个功能的实现,可以用多种语句来实现,比如说:while语句、for语句、生成器、列表推导、内置函数等实现,然而他们的效率并不一样。写了一个小程序来测试它们执行的效率。测试内容:将一个数字大小为20万的数字,依次取绝对值,放到列表中,测试重复1千次.测试程序:复制代码代码如下:importtime,sysreps=1000#测试重复次数nums=200000#测试时数字大小deftester(func,*args):#总体测试函数startTime=tim
系统 2019-09-27 17:45:55 2254
Python入门之内置模块--os模块1、osos是和操作系统做交互,给操作发指令os模块是与操作系统交互的一个接口,它提供的功能多与工作目录,路径,文件等相关(1)工作路径print(os.getcwd())#获取当前文件工作的路径***os.chdir("D:\Python_s25\day16")#路径切换**print(os.getcwd())print(os.curdir)#返回当前目录:('.')print(os.pardir)#获取当前目录的父
系统 2019-09-27 17:45:41 2254
使用pip安装pipinstallvirtualenv因为已经安装过了,所以显示这样在这里我想在这里推荐大家以后再安装类库时可以用豆瓣源来安装,速度很快,因为在国内访问官方pypi源非常慢,pip安装包经常会出错豆瓣源我来演示下django的安装可以看到速度很快好了回到虚拟环境的安装virtualenvscrapytest(环境名)安装好后输入activate.bat进入虚拟环境后输入python查看当前python版本为2.7退出退出虚拟环境:输入dea
系统 2019-09-27 17:37:40 2254
全文转载:http://blog.csdn.net/forfuture1978/archive/2009/10/22/4711308.aspx作者:forfuture1978(fromCSDN)我们都知道,Lucene是一个开放源代码的全文检索引擎工具包。那么全文检索到底是什么?这要从我们生活中的数据说起。我们生活中的数据总体分为两种:结构化数据和非结构化数据。结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据:指不定长或无固定格
系统 2019-08-29 21:59:57 2254
全文转载:http://www.blogjava.net/zhenandaci/archive/2008/08/31/225966.html作者:Jasper大家应该还记得,开方检验(χ2,又称Chi-square)其实是数理统计中一种常用的检验两个变量独立性的方法。开方检验最基本的思想就是通过观察实际值与理论值的偏差来确定理论的正确与否。具体做的时候常常先假设两个变量确实是独立的(行话就叫做“原假设”),然后观察实际值(也可以叫做观察值)与理论值(这个理
系统 2019-08-29 21:59:29 2254
转载:http://java.chinaitlab.com/line/779789_2.htmlsynchronized关键字有两种用法。第一种就是在《使用Synchronized关键字同步类方法》一文中所介绍的直接用在方法的定义中。另外一种就是synchronized块。我们不仅可以通过synchronized块来同步一个对象变量。也可以使用synchronized块来同步类中的静态方法和非静态方法。synchronized块的语法如下:publicvo
系统 2019-08-12 09:30:02 2254