脚本如下:fromopenpyxlimportload_workbookworkbook=load_workbook(u'/tmp/test.xlsx')#找到需要xlsx文件的位置booksheet=workbook.active#获取当前活跃的sheet,默认是第一个sheet#如果想获取别的sheet页采取下面这种方式,先获取所有sheet页名,在通过指定那一页。#sheets=workbook.get_sheet_names()#从名称获取shee
系统 2019-09-27 17:48:59 1881
#输出字典d1的键值和键值个数d1={'x':1,'y':2,'z':3}d1={'x':1,'y':2,'z':3}keylist=d1.keys()whilekeylist:print(keylist(0))keylist.pop(0)else:print(len(d))报错:TypeError:'dict_keys'objectisnotcallablehttps://stackoverflow.com/questions/17322668/type
系统 2019-09-27 17:48:32 1881
1.何时使用线程池系统启动一个新线程的成本是比较高的,因为它涉及与操作系统的交互。在这种情形下,使用线程池可以很好地提升性能;尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池。线程池在系统启动时即创建大量空闲的线程,程序只要将一个函数提交给线程池,线程池就会启动一个空闲的线程来执行它。当该函数执行结束后,该线程并不会死亡,而是再次返回到线程池中变成空闲状态,等待执行下一个函数。使用线程池可以有效地控制系统中并发线程的数量。当系统中包含有
系统 2019-09-27 17:48:26 1881
在Python列表操作中:列表乘以某一个数,如list2=list1*2得到一个新的列表是list1的元素重复n次,且list1不改变。但运行如下代码时,得到的新列表b中,b[0]和b[1]的地址相同,即对b[0]进行操作,b[1]也会发生改变。a=[0]b=[a]*2print(b)b[0].append(1)print(b)输出为:[[0],[0]][[0,1],[0,1]]随后尝试以下几种代码:代码(1)a=[0]b=[afor_inrange(2)
系统 2019-09-27 17:48:16 1881
幸运的是,这一问题还是很容易解决的,我们只需要使用__builtins__:from__builtins__importintaspy_int这样一来我们又可以重新使用python的int了,但在此时叫做py_int.一个function或变量的被覆盖最常见的原因是在引用时使用了"*":fromsomethingimport*当这样使用import时,我们无法明确的指导究竟引入了哪些变量或function,也无法知道这些变量或function是否会覆盖原来
系统 2019-09-27 17:47:24 1881
面试被问到了却没有用过,很尴尬;今天看了一下,真的是一个很简单的测试模块方便起见,这里直接拿菜鸟教程的介绍和例子过来开发高质量软件的方法之一是为每一个函数开发测试代码,并且在开发过程中经常进行测试;doctest模块提供了一个工具,扫描模块并根据程序中内嵌的文档字符串执行测试;测试构造如同简单的将它的输出结果剪切并粘贴到文档字符串中;通过用户提供的例子,它强化了文档,允许doctest模块确认代码的结果是否与文档一致;defaverage(values):
系统 2019-09-27 17:47:00 1881
fileno()方法返回所使用的底层实现,要求从操作系统I/O操作的整数文件描述符。语法以下是fileno()方法的语法:fileObject.fileno();参数NA返回值此方法返回整数文件描述符。例子下面的例子显示fileno()方法的使用。#!/usr/bin/python#Openafilefo=open("foo.txt","wb")print"Nameofthefile:",fo.namefid=fo.fileno()print"FileDe
系统 2019-09-27 17:46:29 1881
FTP一般流程FTP对应PASV和PORT两种访问方式,分别为被动和主动,是针对FTP服务器端进行区分的,正常传输过程中21号端口用于指令传输,数据传输端口使用其他端口。PASV:由客户端发起数据传输请求,服务器端返回并携带数据端口,并且服务器端开始监听此端口等待数据,为被动模式;PORT:客户端监听端口并向服务器端发起请求,服务器端主动连接此端口进行数据传输,为主动模式。其中TYPE分两种模式,I对应二进制模式、A对应ASCII模式;PASV为客户端发送
系统 2019-09-27 17:46:25 1881
python比php更流行,原因何在?php诞生之日起,就专注于风网页应用,在其它的领域没有什么知名度。python一开始就是想简化C,定位为一种通用的全面性的开发语言。但是更重要的一点是,python建立起了方便的扩展机制,可以方便用python或c编写库,发布库,用pip安装库。而php在可扩展性上就要差得许多,很长时间都没有库的发布与安装机制,所以只能定位在网页脚本上,在应用的广泛性上远不如python。一门语言不可能在一开始就尽善尽美,如果提供一种
系统 2019-09-27 17:46:18 1881
前面的python3入门系列基本上也对python入了门,从这章起就开始介绍下python的爬虫教程,拿出来给大家分享;爬虫说的简单,就是去抓取网路的数据进行分析处理;这章主要入门,了解几个爬虫的小测试,以及对爬虫用到的工具介绍,比如集合,队列,正则表达式;用python抓取指定页面:代码如下:importurllib.requesturl="http://www.baidu.com"data=urllib.request.urlopen(url).rea
系统 2019-09-27 17:45:49 1881
测试代码如下:复制代码代码如下:classModelMetaClass(type):def__new__(cls,name,base,attrs):logging.info("clsis:"+str(cls))logging.info("nameis:"+str(name))logging.info("baseis:"+str(base))logging.info("attrsis:"+str(attrs))returntype.__new__(cls,n
系统 2019-09-27 17:45:40 1881
Python递归函数实例1、打开Python开发工具IDLE,新建‘递归.py'文件,并写代码如下:defdigui(n):ifn==0:print('')returnprint('*'*n)digui(n-1)if__name__=='__main__':digui(5)这里递归打印*号,先打印后递归2、F5运行程序,打印内容如下;***************3、更改一下打印和递归的顺序,先递归后打印,代码如下:defdigui(n):ifn==0:p
系统 2019-09-27 17:38:16 1881
项目内容:用Python写的糗事百科的网络爬虫。使用方法:新建一个Bug.py文件,然后将代码复制到里面后,双击运行。程序功能:在命令提示行中浏览糗事百科。原理解释:首先,先浏览一下糗事百科的主页:http://www.qiushibaike.com/hot/page/1可以看出来,链接中page/后面的数字就是对应的页码,记住这一点为以后的编写做准备。然后,右击查看页面源码:观察发现,每一个段子都用div标记,其中class必为content,title
系统 2019-09-27 17:38:06 1881
首先第一步,打开文件,有两个函数可供选择:open()和file()①.f=open('file.txt',‘w')...file.close()②.f=file('file.json','r')...file.close()#记得打开文件时最后不要忘记关闭!open()和file()都是Python的内建函数,返回一个文件对象,具有相同的功能,可以任意替换。使用语法为:f=open(fileName,access_mode='r',buffering=-
系统 2019-09-27 17:37:51 1881
《Python开发技术详解》试读:2.2.1命名规则2.2Python的编码规则Python语言有自己独特的编码规则,包括命名规则、代码书写规则等。本节将详细介绍Python中常用的规则,并解释这些规则的原理和由来。2.2.1命名规则Python语言有一套自己的命名规则
系统 2019-08-29 23:07:09 1881