- 军军小站|张军博客
搜索到与相关的文章
Python

Python标准库urllib2的一些使用细节总结

Python标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如urllib2这个HTTP客户端库。这里总结了一些urllib2的使用细节。1.Proxy的设置2.Timeout设置3.在HTTPRequest中加入特定的Header4.Redirect5.Cookie6.使用HTTP的PUT和DELETE方法7.得到HTTP的返回码8.DebugLogProxy的设置urllib2默认会使用环境变量http_proxy

系统 2019-09-27 17:51:34 1789

Python

Python踩坑系列-20190803

关于声明并初始化二维列表想要快速创建一个二维列表如:5x3的二维列表[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]正确用法:#先创建一个一维列表tmp=[0,]*3result=[]foriinrange(5):#拷贝对象result.append(tmp.copy())result[0][1]=1print(result)#[[0,1,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]误用:#得到的

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

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 1789

Python

python调用其他文件函数或类的示例

B.py调用A.py的函数或类在同一个文件夹下调用函数:A.py文件:defadd(x,y):print('和为:%d'%(x+y))B.py文件:importAA.add(1,2)或fromAimportaddadd(1,2)调用类:A.py文件:classA:def__init__(self,xx,yy):self.x=xxself.y=yydefadd(self):print("x和y的和为:%d"%(self.x+self.y))B.py文件:fr

系统 2019-09-27 17:51:08 1789

Python

Python基础(九)

今日主要内容函数初识函数定义函数调用函数返回值函数参数一、函数初识(一)为什么要用函数有一个需求,给出一个变量,计算变量的长度,要求不能使用len()s="郭老湿今天崩溃了,在后面直叹气"count=0foriins:count+=1print(count)我们利用上述一段代码完成了需求,很强666。但是问题来了,现在100个人每个人给你一个变量,让你计算变量的长度,此时只能苦逼的敲代码来计算!!!s=......count=0foriins:count+

系统 2019-09-27 17:51:05 1789

Python

浅析python继承与多重继承

记住以下几点:直接子类化内置类型(如dict,list或str)容易出错,因为内置类型的方法通常会忽略用户覆盖的方法,不要子类化内置类型,用户自定义的类应该继承collections模块。def__setitem__(self,key,value):super().__setitem__(key,[value]*2)#错误案例classAnswerDict(dict):def__getitem__(self,item):#错误案例return42impor

系统 2019-09-27 17:50:43 1789

Python

python的浅拷贝与深拷贝

什么是浅拷贝?先看一个例子a=[1,2,3,4]b=aa.pop(0)print(a)print(b)输出:[2,3,4][2,3,4]正常对于这种可变对象的这种赋值,会导致a和b指向一个内存地址,而我们将a中的第0个元素剔除后,实质就是改变了对应的内存地址中的数值,所以会导致b也发生变化下面看一下浅拷贝:a=[1,2,3,4]b=a.copy()a.pop(0)print(a)print(b)输出[2,3,4][1,2,3,4]这种就是浅拷贝,拷贝的列表

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

Python

python多线程

python多线程#创建线程threading_list=[]t1=threading.Thread(target=music,args=(u'爱情买卖',))threading_list.append(t1)t2=threading.Thread(target=move,args=(u'阿凡达',))threading_list.append(t2)fortinthreading_list:#启动线程t.setDaemon(True)#将线程声明为守护线

系统 2019-09-27 17:50:32 1789

Python

python 元类编程

元类编程装饰器任何时候你定义装饰器的时候,都应该使用functools库中的@wraps装饰器来注解底层包装函数.因为一个普通装饰器作用在某个函数上时,这个函数的重要的元信息比如名字、文档字符串、注解和参数签名都会丢失。但是@wraps不会。importtimefromfunctoolsimportwrapsdeftimethis(func):'''Decoratorthatreportstheexecutiontime.'''@wraps(func)de

系统 2019-09-27 17:50:24 1789

Python

python多进程,进程池,数据共享,进程通信,分布式进程

一、操作系统中相关进程的知识Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下每个子进程的ID,而子进程只需要调用getppid()就可以拿到父进程的I

系统 2019-09-27 17:50:08 1789