功能:为已存在的函数或对象添加额外的功能原则:不改变源代码为其添加功能不改变函数的调用方式方法:装饰器=高阶函数+嵌套函数(高阶函数:一个函数可以作为参数传递给另外一个函数,或者,一个函数的返回值是一个函数,即函数的入口地址)函数名作为参数传递给装饰器(@decorator_name)装饰函数返回函数名(函数地址)注意:默认情况下,装饰器会修改名字和文档说明,但是可以使用functools中的@wraps()解决。@wraps接受一个函数来进行装饰,并加入
系统 2019-09-27 17:51:46 2198
程序很简单,主要是mp3play模块的应用importmp3play,timefilename="ShouldItMatter.mp3"clip=mp3play.load(filename)while1:iftime.localtime().tm_min%30==0:clip.play()print"\nStarttoplay"time.sleep(clip.seconds())clip.stop()print"Stop"print'>',time.sle
系统 2019-09-27 17:51:13 2198
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中;字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的;但键不行,如果同一个键被赋值两次,后一个值会被记住。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组(列表这样的可变类型不能作为键)。一、字典的创建、访问:dict={'Name':'Zara',
系统 2019-09-27 17:50:44 2198
上一小节老袁给晓白介绍了python-web开发工程师主要做什么,并从初中高级三个层次分析了这个岗位的具体需求。本节继续介绍python爬虫工程师的一些具体要求。python爬虫工程师该岗位做什么?python爬虫工程师主要是从网上爬取各种数据,然后对数据做整理和简单的存储。具体的职责如下:设计并实现公司的爬虫软件设计并实现网络数据的抓取规则,可以定期爬取指定的网站设计爬虫策略和防屏蔽规则,提高网页抓取效率和质量实现数据提取,清洗,结构化,数据库存储和统计
系统 2019-09-27 17:50:32 2198
回顾在前面的系列章节中,我们创建了一个数据库并且学着用用户和邮件来填充,但是到现在我们还没能够植入到我们的程序中。两章之前,我们已经看到怎么去创建网络表单并且留下了一个实现完全的登陆表单。在这篇文章中,我们将基于我门所学的网络表单和数据库来构建并实现我们自己的用户登录系统。教程的最后我们小程序会实现新用户注册,登陆和退出的功能。为了能跟上这章节,你需要前一章节最后部分,我们留下的微博程序。请确保你的程序已经正确安装和运行。在前面的章节,我们开始配置我们将要
系统 2019-09-27 17:48:59 2198
本文实例讲述了Python基础学习之时间转换函数用法。分享给大家供大家参考,具体如下:前言python的时间格式分为多种,几种格式之间的转换方法时常是我们遇到的而且是经常忘记的点,python不像php,时间字符串和datetime是一起的,只需要strtotime和date函数就可以相互转化。虽然网上已经有很多python时间转换的文章,但是由于作者本人经常做海外业务,需要各种时区之间的转换,所以这篇文章会对按时区转换各种时间格式做一个总结。转换方法图示
系统 2019-09-27 17:48:48 2198
Python实现整数的加减乘除的计算器,不包含括号,除法取整:importredefrun():string=input()strls=re.findall('\d+|\+|\-|\*|\/',string)i=0while(i
系统 2019-09-27 17:48:11 2198
前言Go大概2009年面世以来,已经8年了,也算是8年抗战。在这8年中,已经有很多公司开始使用Go语言开发自己的服务,甚至完全转向Go开发,也诞生了很多基于Go的服务和应用,比如Dokcer、k8s等,很多的大公司也在用,比如google(作为开发Go语言的公司,当仁不让)、Facebook、腾讯、百度、阿里、京东、小米以及360,当然除了以上提到的,还有很多公司也都开始尝试Golang,这其中是什么原因呢?让我们来一起分析分析。原因1:性能Go极其地快。
系统 2019-09-27 17:48:04 2198
新建一个项目app02在app02/下创建urls.py:fromdjango.conf.urlsimporturlfromapp02importviewsurlpatterns=[url(r'^blog/',views.test,name="blog"),]app01/urls.py:fromdjango.conf.urlsimporturlfromapp01importviewsurlpatterns=[url(r'^blog/',views.blog
系统 2019-09-27 17:47:37 2198
目录Python并发编程06/同步/异步调用/异步调用+回调函数1.如何看源码2.昨日回顾3.阻塞、同步调用、异步调用3.1概念3.2异步调用3.3同步调用3.4异步如何取结果4.异步调用+回调函数4.1浏览器工作原理4.2什么叫爬虫4.3异步调用+回调函数Python并发编程06/同步/异步调用/异步调用+回调函数1.如何看源码2.昨日回顾#1.递归锁:RLock,同一把锁,引用一次计数+1,释放一次计数-1,只要计数不为零,其他线程就抢不到,能解决死锁
系统 2019-09-27 17:47:25 2198