平时做数据处理基本离不了日志记录功能。每次都配置一堆挺烦人,索性封装个模块,这里记录一下,与大家共享。说明本日志模块目前只有一个方法getLogger,其他配置项通过参数传递,包括日志文件名,等级,日志文件划分方式,日志清除配置,日志格式等。logger.pyimportloggingfromloggingimporthandlers#日志级别字典__level_dict={'critical':logging.CRITICAL,'fatal':loggi
系统 2019-09-27 17:50:32 2087
文件的数据是存放于硬盘上的,因而只存在覆盖、不存在修改这么一说,我们平时看到的修改文件,都是模拟出来的效果,具体的说有两种实现方式。一、方式一将硬盘存放的该文件的内容全部加载到内存,在内存中是可以修改的,修改完毕后,再由内存覆盖到硬盘(word,vim,nodpad++等编辑器)。importoswithopen('37r.txt')asfr,\open('37r_swap.txt','w')asfw:data=fr.read()#全部读入内存,如果文件很
系统 2019-09-27 17:50:22 2087
协程是什么我们已经做过不少爬虫项目,不过我们爬取的数据都不算太大,如果我们想要爬取的是成千上万条的数据,那么就会遇到一个问题:因为程序是一行一行依次执行的缘故,要等待很久,我们才能拿到想要的数据。既然一个爬虫爬取大量数据要爬很久,那我们能不能让多个爬虫一起爬取?这样无疑能提高爬取的效率,就像一个人干不完的活儿,组个团队一起干,活一下被干完了。这是一个很好的思路——让多个爬虫帮我们干活。但具体怎么用Python实现这事呢?我们可以先别急着想怎么实现这件事,后
系统 2019-09-27 17:50:16 2087
本文实例讲述了Python函数用法。分享给大家供大家参考,具体如下:demo.py(函数定义):#say_hello()#不能在定义函数之前调用函数#Python解释器知道下方定义了一个函数defsay_hello():"""函数的说明文档"""print("hello1")print("hello2")print("hello3")print("调用函数之前")#只有在程序中,主动调用函数,才会让函数执行say_hello()print("调用函数之后"
系统 2019-09-27 17:49:23 2087
代码为:#查询所有图书、增加图书defget(self,request):queryset=BookInfo.objects.all()book_list=[]forbookinqueryset:book_list.append({'id':book.id,'bread':book.bread})returnJsonResponse(book_list,safe=False)遇到问题:JsonResponse(book_list,safe=False)sa
系统 2019-09-27 17:49:09 2087
PIL图片操作读取图片img=Image.open(“a.jpg”)显示图片im.show()#im是Image对象,im是numpy类型,通过Image.fromarray(nparr,mode='RGB')函数转换为Image对象图片的size(width,height)=img.size图片的模式mode=img.mode截区域img_c=img.crop(x1,y1,x2,y2)裁剪图片img=img.resize((size,size),Imag
系统 2019-09-27 17:48:58 2087
*args和**kwargs*args代表位置参数,它会接收任意多个参数并把这些参数作为元组传递给函数。**kwargs代表的关键字参数,允许你使用没有事先定义的参数名,另外,位置参数一定要放在关键字参数的前面。__new__和__init__的区别创建一个新实例时调用__new__,初始化一个实例时用__init__,这是它们最本质的区别。new方法会返回所构造的对象,init则不会.new函数必须以cls作为第一个参数,而init则以self作为其第一
系统 2019-09-27 17:48:29 2087
分号不要在行尾加分号,也不要用分号将两条命令放在同一行.行长度每行不超过80个字符例外:长的导入模块语句注释里的URL不要使用反斜杠连接行.Python会将圆括号,中括号和花括号中的行隐式的连接起来,你可以利用这个特点.如果需要,你可以在表达式外围增加一对额外的圆括号.Yes:foo_bar(self,width,height,color='black',design=None,x='foo',emphasis=None,highlight=0)if(wi
系统 2019-09-27 17:48:08 2087
Ruby和Python太相似了,取舍大部分都是个人喜好上的原因。比如我就觉得Python的“Thereisonlyonewaytodoit.”比Ruby的“Therearemanywaystodoit.”要好,这不光是考虑团队协作的问题,更重要的是自己能很快明白自己三个月前写的没有任何注释的代码是在干什么。当然也有很多人觉得自由和灵活要比可读性来的重要,所以我说这个是个人喜好的原因。客观上的Ruby比Python的优势我想到的有这么几个:Block应该是语
系统 2019-09-27 17:48:04 2087
接口设计一个应用写出来最终是要给人使用的,哪怕只是给你自己使用。所以,首先应该想想你希望怎么使用它?让我们先给这个小应用起个名字吧,既然及查询票务信息,那就叫它tickets好了。我们希望用户只要输入出发站,到达站以及日期就让就能获得想要的信息,所以tickets应该这样被使用:$ticketsfromtodate另外,火车有各种类型,高铁、动车、特快、快速和直达,我们希望可以提供选项只查询特定的一种或几种的火车,所以,我们应该有下面这些选项:-g高铁-d
系统 2019-09-27 17:46:17 2087