什么是浅拷贝?先看一个例子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 1787
一、ConfigParser简介ConfigParser是用来读取配置文件的包。配置文件的格式如下:中括号“[]”内包含的为section。section下面为类似于key-value的配置内容。复制代码代码如下:[db]db_host=127.0.0.1db_port=22db_user=rootdb_pass=rootroot[concurrent]thread=10processor=20中括号“[]”内包含的为section。紧接着section为
系统 2019-09-27 17:50:05 1787
理解新概念PythonV2.2中引入了迭代器的思想。唔,这并不十分正确;这种思想的“苗头”早已出现在较老的函数xrange()以及文件方法.xreadlines()中了。通过引入yield关键字,Python2.2在内部实现的许多方面推广了这一概念,并使编程定制迭代器变得更为简单(yield的出现使函数转换成生成器,而生成器反过来又返回迭代器)。迭代器背后的动机有两方面。将数据作为序列处理通常是最简单的方法,而以线性顺序处理的序列通常并不需要都同时实际存在
系统 2019-09-27 17:49:57 1787
通过Python\text{Python}Python仿真一个FireFoxorChrome\text{FireFoxorChrome}FireFoxorChrome浏览器,然后通过send_keys\text{send\_keys}send_keys发送数据到input\text{input}input文本框,当数据字节数比较小时,完全不会发现任何异常,但是当发送长文本时,会出现卡顿或者阻塞的现象,导致数据的实时性下降了很多。查看send_keys\te
系统 2019-09-27 17:49:52 1787
[TOC]一、队列queue队列:使用importqueue,用法与进程Queue一样实际上这里就是Python解释器中的一种数据结构中的类型——队列这里直接使用队列也可以。如果还要类似计数器的功能可以加上task_done和joinFIFO先进先出LIFO后进先出优先级队列二、先进先出(FIFO)classqueue.Queue(maxsize=0)###普通队列q=queue.Queue()###没有计数器进行阻塞FIFOq.put("first")q
系统 2019-09-27 17:49:51 1787
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 1787
在开发一些需要网络通信的应用中,经常会用到各种网络协议进行通信,博主在开发实验室的机器人的时候就遇到了需要把机器人上采集到的图片传回服务器进行处理识别,在python下的实现方式如下(只贴出了关键代码)服务器端LOCAL_IP='192.168.100.22'#本机在局域网中的地址,或者写127.0.0.1PORT=2567#指定一个端口defserver():sock=socket.socket(socket.AF_INET,socket.SOCK_ST
系统 2019-09-27 17:49:31 1787
一.lamda匿名函数为了解决一些简单的需求而设计的一句话函数#计算n的n次方deffunc(n):returnn**nprint(func(10))f=lambdan:n**nprint(f(10))lambda表示的是匿名函数.不需要用def来声明,一句话就可以声明出一个函数语法:函数名=lambda参数:返回值注意:1.函数的参数可以有多个.多个参数之间用逗号隔开2.匿名函数不管多复杂.只能写一行,且逻辑结束后直接返回数据3.返回值和正常的函数一样,
系统 2019-09-27 17:49:16 1787
#同时修改好几个word文档,转换特定的内容importreimportdocxdoc1=docx.Document('example.docx')spam=['后勤','技术','行政']forjinspam:doc2=docx.Document()foriinrange(0,len(doc1.paragraphs)):c=re.sub('销售',j,doc1.paragraphs[i].text)#第一个参数表示匹配的项,第二个参数表示要替换成的内容,
系统 2019-09-27 17:49:15 1787
目录logging模块利用配置加载logger方式一模板:logging.config.dictConfig(config_dict)logging模块利用配置加载loggerlogging.config模块提供了从配置加载创建logger等相关对象,并放入manager对象中进行缓存待用。所以记录下一般几种方式配置的范本模式,方便项目中copy直接修改使用。dictconfigreferences官档关于logging配置字典说明方式一模板:loggin
系统 2019-09-27 17:49:12 1787