包含标签 python 的文章

python中关于map,lambda,高阶函数与装饰器的使用

有一点python基础的朋友在看到一些老鸟写的一些函数的时候,他们会有意的写出一些高阶函数,要么带个map啊,要么带个lambda呀,再高一点的带个@装饰器啊,其它这些也没有什么难的,用法上高级一些,如果能捋顺它的逻辑,准确的在实际应用中使用,还是会给程序效率上带来一定的提高,至于可读性,当你习惯了这些用法时你就会觉得它的可读性也很好,之所以你不习惯,主要还是由于你不懂它的用法,说到可读性,这是另外的话题,以后再详细的聊聊,今天要说的主要是高阶函数与装饰器的使用。希望看完此篇文章的朋友有所收获。

……

阅读全文

利用logging模块轻松地进行Python日志记录(转)

在开发过程中,如果程序运行出现了问题,我们是可以使用我们自己的 Debug 工具来检测到到底是哪一步出现了问题,如果出现了问题的话,是很容易排查的。但程序开发完成之后,我们会将它部署到生产环境中去,这时候代码相当于是在一个黑盒环境下运行的,我们只能看到其运行的效果,是不能直接看到代码运行过程中每一步的状态的。在这个环境下,运行过程中难免会在某个地方出现问题,甚至这个问题可能是我们开发过程中未曾遇到的问题,碰到这种情况应该怎么办? 如果我们现在只能得知当前问题的现象,而没有其他任何信息的话,如果我们想要解决掉这个问题的话,那么只能根据问题的现象来试图复现一下,然后再一步步去调试,这恐怕是很难的,很大的概率上我们是无法精准地复现这个问题的,而且 Debug 的过程也会耗费巨多的时间,这样一旦生产环境上出现了问题,修复就会变得非常棘手。但这如果我们当时有做日志记录的话,不论是正常运行还是出现报错,都有相关的时间记录,状态记录,错误记录等,那么这样我们就可以方便地追踪到在当时的运行过程中出现了怎样的状况,从而可以快速排查问题。 因此,日志记录是非常有必要的,任何一款软件如果没有标准的日志记录,都不能算作一个合格的软件。作为开发者,我们需要重视并做好日志记录过程。

……

阅读全文

python中的异常处理

写程序肯定要接触异常处理,还好python中的异常处理比较简单,但是有些细节还是需要好好看一下 这里记录一下try在python中的使用。

……

阅读全文

使用Redis作为消息队列实现生产消费与发布订阅

日常的工作中,经常会用到队列(Queue),在python中有原生的队列,但是由于原生的队列是存在于内存当中,当系统重启后队列里的消息就没有,且无法进行分步式,Redis中的List数据有四种原语,LPUSH,LPOP,RPUSH,RPOP,配合使用可以实现简单的生产消费模型。

……

阅读全文

使用python抓取自住房信息

使用python也有一段时间了,最近比较关注自住房信息,虽说它更新的比较缓慢,但是平时也不怎么会特意的去它的网站上去看, 于是就想用python抓它的信息,如果有新的信息就给自己发个邮件,这样手机上得到通知以后就可以再去它的网站上看看。 功能比较简单,但是用到的点还是挺多的,这里记录一下。 主要有以下几个步骤

  1. python beautifulsoup 与requests的使用
  2. ubuntu 中安装 mysql 与mysql-python
  3. beautifulsoup与requests编码的问题
  4. 使用gmail发送邮件,其中gmail采用两步认证要单独申请一个密码
  5. 在ubuntu中使用crontab定时来触发脚本
……

阅读全文

用于python的定时任务apscheduler的使用

最近在项目中有一个比较特殊的需求,要求在每个月第二个周二暂停任务,然后周三再开启 于是在网上查了一下,python中有一个apscheduler库可以实现,而且这个框架还挺强大的 这里记录一下它的使用

……

阅读全文

webpy的常规使用与踩过的坑

在使用python做网站的时候首先接触的就是webpy了,这个框架小巧简单,对于小型的网络应用功能足以了,在使用的过程中也遇到过一些总是,在这里也记录总结一下

基础的框架搭建

安装

pip install web.py -i https://pypi.douban.com/simple
……

阅读全文