搜索到与相关的文章
Python

为什么从Python 3.6开始字典有序并效率更高

在Python3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。但是从Python3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A的后面。不仅如此,从Python3.6开始,下面的三种遍历操作,效率要高于Python3.5之前:forkeyin字典forvaluein字典.values()forkey

系统 2019-09-27 17:52:03 1972

Python

python 使用 config 文件

在写程序时,我们经常需要定义一些路径常量,为了逻辑和代码的清晰,可以新建一个config.ini文件,然后调用其中的信息即可。config.ini文件格式如下:[section1]model_dir=/home/user/nlp-data/trained-model;注释save_input=./profiling/inputsave_state=./profiling/state......[section2]save_output=./profilin

系统 2019-09-27 17:51:24 1972

Python

python获取未来和过去的时间

获取现在的时间用方法datetime.datetime.now().strftime('%F%T'),获取未来或者过去的时间可以用如下方法:#-*-coding:utf-8-*-importdatetimeif__name__=='__main__':print(datetime.datetime.now().strftime('%F%T'))print((datetime.datetime.now()-datetime.timedelta(days=1)

系统 2019-09-27 17:51:23 1972

Python

Python:Excel文件的读取

打开excel文件读取数据data=xlrd.open_workbook("excelFile.xls")读取工作表table=data.sheets()[0]#通过索引顺序获取table=data.sheet_by_index(0)#通过索引顺序获取table=data.sheet_by_name(u'Sheet1')#通过名称获取获取整行和整列的值(数组)table.row_values(i)#获取整行值table.col_values(i)#获取整列

系统 2019-09-27 17:51:17 1972

Python

Python并发编程03/僵尸孤儿进程,互斥锁,进程之间的通信

目录Python并发编程03/僵尸孤儿进程,互斥锁,进程之间的通信1.昨日回顾2.僵尸进程和孤儿进程2.1僵尸进程2.2孤儿进程2.3僵尸进程如何解决?3.互斥锁,锁3.1互斥锁的应用3.2Lock与join的区别4.进程之间的通信进程在内存级别是隔离的4.1基于文件通信(抢票系统)4.2基于队列通信Python并发编程03/僵尸孤儿进程,互斥锁,进程之间的通信1.昨日回顾1.创建进程的两种方式:函数,类.2.pid:os.getpid()os.getpp

系统 2019-09-27 17:50:57 1972

Python

基本图像操作和处理(python)

PIL提供了通用的图像处理功能,以及大量的基本图像操作,如图像缩放、裁剪、旋转、颜色转换等。Matplotlib提供了强大的绘图功能,其下的pylab/pyplot接口包含很多方便用户创建图像的函数。为了观察和进一步处理图像数据,首先需要加载图像文件,并且为了查看图像数据,我们需要将其绘制出来。fromPILimportImageimportmatplotlib.pyplotaspltimportnumpyasnp#加载图像img=Image.open("

系统 2019-09-27 17:50:40 1972

Python

python 批量添加的button 使用同一点击事件的方法

python批量添加的button使用同一点击事件根据传递的参数进行区分。defclear_text():print'我只是个清空而已'defclear_text(index):print'我只是个清空而已'+str(index)button=Button(framet_title,text='清空',command=clear_text)这样去设置,单个按钮对应单个点击事件没有问题的如果你是foriinRange(10):button=Button(fr

系统 2019-09-27 17:50:34 1972

Python

Python 的可迭代对象、迭代器和生成器

迭代器和可迭代对象由for循环的内部原理说起list01=[2,434,5,6,8]foriteminlist01:print(item)大家有没有想过list类型对象为什么可以被for循环呢?能够被for循环的条件是:它是可迭代对象(iterable)。那么什么是可迭代对象呢?参考一下内置函数item()的官方说明文档:iter(object[,sentinel])返回一个iterator对象。根据是否存在第二个实参,第一个实参的解释是非常不同的。如果没

系统 2019-09-27 17:50:22 1972

Python

Python中的各种装饰器详解

Python装饰器,分两部分,一是装饰器本身的定义,一是被装饰器对象的定义。一、函数式装饰器:装饰器本身是一个函数。1.装饰函数:被装饰对象是一个函数[1]装饰器无参数:a.被装饰对象无参数:复制代码代码如下:>>>deftest(func):def_test():print'Callthefunction%s().'%func.func_namereturnfunc()return_test>>>@testdefsay():return'hellowor

系统 2019-09-27 17:50:21 1972

Python

python is 和 ==区别

s与==区别:is用于判断两个变量引用对象是否为同一个,==用于判断引用变量的值是否相等。aisb相当于id(a)==id(b),id()能够获取对象的内存地址。如果a=10;b=a;则此时a和b的内存地址一样的;但当a=[1,2,3];另b=a[:]时,虽然a和b的值一样,但内存地址不一样。如果此时定义a=10、b=10,然后再对比aisb会发现返回的结果是True,这是因为在Python中会实现创建一个小型的整形池,范围为[-5,256],为这些整形开

系统 2019-09-27 17:49:44 1972