- 博客(151)
- 资源 (1)
- 收藏
- 关注
原创 使用Python描述符实现单例模式
一、什么是描述符在Python中实现了__get__/__set__/__delete__魔术方法的类就是描述符,通过描述符我们可以反向控制引用了描述符的类。如以下的代码所示,在普通的类中,类B引用了类A,类A是不能控制类B。class A: passclass B: a = A()B.a但是,实现了描述符协议的类就不一样了,如以下的代码所示,我们可以通过...
2019-07-13 18:11:13 523
原创 Redis 管道技术
Redis提供了管道可以一次下发多条命令,并一次性返回多个结果,大大提高了运行效率。使用管道:import redisimport timer = redis.Redis(password='xiemanrui')s = time.time()p = r.pipeline()for i in range(10000): p.set('foo', 'bar%s' ...
2018-12-27 00:15:54 664
原创 关于日志的那些事儿
日志的作用1.审计商业分析:比如从日志中提取用户行为(比如,一个点击事件流)并结合用户的其他详情(比如,最终购买行为)来生成报告或者推荐相关产品。 接口调用情况统计:调用量、调用成功率、平均响应时间 软件使用情况统计2.诊断根据日志的错误信息的上下文定位和追踪问题 根据相关日志信息了解软件的运行状态 ...3.监控告警在运维中,经常需要实时监控日志内容,根据某种策略来判...
2018-12-26 23:51:28 495
原创 Redis 安全
通过设置密码可以使redis服务更安全。默认情况下是没有密码的,也就是说无需密码就可以连接redis服务器。>>> import redis>>> r.config_get()['requirepass']''>>>通过config_set函数设置密码:>>> import redis>>
2018-12-23 22:55:45 366
原创 Redis 数据备份与恢复
备份:save函数用于创建当前数据库的备份。>>> import redis>>> r = redis.Redis()>>> r.save()True>>>调用save函数后将在 redis 安装目录中创建dump.rdb文件。 数据恢复:如需恢复数据,则将备份文件 (dump.rdb) ...
2018-12-23 22:23:20 883
原创 Linux安装Python3
步骤如下:0.下载Python3的源码包如Python-3.4.2.tgz,并把源码包传到服务器 下载地址:https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz 由于内网下载源码包不方便,经常断断续续的,我把源码包放到了GitLab上: http://pagit.paic.com.cn/XIEMANRUI...
2018-12-23 17:51:31 1097
原创 Linux安装Python2
步骤如下:0.切换到root用户安装python1.mkdir /usr/local/python272.解压:tar -xvf Python-2.7.15.tgz3.cd Python-2.7.154.编译:./configure --prefix=/usr/local/python275.安装: (1)make (2)make install6.创建软连接:...
2018-12-23 17:48:54 6800
原创 linux安装psycopg2(源码安装)
步骤如下:1.下载源码包psycopg2-2.7.5.tar.gz2.找到postgres的安装路径,假设为 /paic/postgres/base/10.3/bin3.执行:export PATH="$PATH:/paic/postgres/base/10.3/bin"4.解压psycopg2:tar -zxvf psycopg2-2.7.5.tar.gz5.cd psycopg2...
2018-12-23 17:47:18 6840 2
原创 cx_Oracle客户端安装:解决DatabaseError: DPI-1047错误
步骤如下:1.下载instantclient-basic-linux.x64-18.3.0.0.0dbru.ziphttps://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html2.解压mkdir -p /opt/oraclecd /opt/oracle unzip instantclient-basic...
2018-12-23 17:45:21 5498
原创 ImportError: No module named _ssl解决方法
import ssl时出现ImportError: No module named _ssl错误是因为咱安装Python的时候没有把ssl模块编译进去导致的。解决步骤:系统没有openssl,手动安装openssl1.下载openssl,地址为http://www.openssl.org/source/openssl-1.0.2a.tar.gz2.安装:tar -xzvf open...
2018-12-23 17:36:15 18223 3
原创 安装Python出现LookupError: unknown encoding: GB2312错误的解决方法
在Linux源码安装Python的时候,有可能会遇到LookupError: unknown encoding: GB2312错误,这里介绍两种解决方法:方法一:这是由于编码的原因,在./configure之前设置字符集:1.export LANG=zh_CH.UTF-82.export LANGUAGE=zh_CH.UTF-8 方法二:在./configure之前设置...
2018-12-23 17:10:02 12024 5
原创 查看Python文档的几种方法
查看文档是一个程序员的基本功,这里简单介绍几种查看Python文档的方法,下面以struct模块为例。1.help在交互模式下,help函数是获取文档的好帮手,使用非常简单。>>> import struct>>> help(struct)Help on module struct:NAME structDESCRIPTION...
2018-12-23 16:53:13 9652 1
原创 Python书籍推荐:《Python3标准库》
最近双十一气氛弥漫在整个互联网,不买点东西总觉得缺了什么。在逛某东的时候无意中发现了这本刚出版没多久的书,一时心血来潮立即加入购物车,这不对啊,价格这么贵,而且优惠套路太多了。去当当一看,五折,99.5块,果断拿下。 Python的库太庞大的,确实需要一本书来梳理一下,最好是按库的功能来粗略地分类,方便我们通过目录快速查阅。而《Python3标准库》就是这样一本书...
2018-11-11 15:23:56 12621 2
原创 Python书籍推荐:《Python编程之美:最佳实践指南》
《Python编程之美:最佳实践指南》的作者之一就是大名鼎鼎的K神,Kenneth Reitz,也就是requests库的作者。在这里必须夸一下requests库,真是太好用了,能用requests绝不用urllib、urllib2。K神出品,必属精品!!! 该书的英文版叫《The Hitchhiker's Guide to Python》,源于K神发起的同名开源...
2018-11-10 20:58:37 5309
原创 Python相关单词简介
最近小编背英文单词走火入魔了,连Python相关的单词都不放过。这里简单介绍一下一些常见的Python相关单词。1.Py ['paɪ]Py就是Python的缩写,很常见,比如py交易。Python代码文件后缀就是py。 2.Pythonic [paɪ'θɒnɪk] Python风格的-ic 形容词后缀,表...的Python + ic = Pythonic ...
2018-10-14 21:36:32 2111
原创 Python不换行打印进度条
我们需要显示进度条的时候可以考虑使用print函数打印出来,比如像下面的实现方法:# -*- coding: utf-8 -*-import timefor i in range(1, 11): # do something print('*' * i) time.sleep(1)进度效果:***********************...
2018-10-14 15:30:24 5931
原创 Python捕获异常堆栈信息的几种方法
程序出错的时候,我们往往需要根据异常信息来找到具体出错的代码。简单地用print打印异常信息并不能很好地追溯出错的代码:# -*- coding: utf-8 -*-def foo(a, b): c = a + b raise ValueError('test') return cdef bar(a): print('a + 100:', foo(...
2018-10-04 00:09:12 32499
原创 Python获取对象属性的4种方法
本文将简单介绍四种获取对象的方法。假如有以下的类:class Person(object): def __init__(self, name, age): self.name = name self.age = age def __str__(self): return 'name=%s, age=%s' ...
2018-09-15 16:24:46 43067 2
原创 两种兼容Python2和Python3的导入库的方法
Python3和Python2是不兼容的,但是由于一些历史遗留问题,比如一些服务器只安装有Python2,一些安装有Python3,所以我们在实际写代码的时候就不得不考虑兼容Python2和Python3了。下面简单介绍两种兼容Python2和Python3的导入库的方法。 一:使用ImportError以configparser为例。读写配置模块在Python2中是大写开头的的C...
2018-08-26 15:19:06 6761
原创 Python使用pydub.AudioSegment把mp3转换为wav报错FileNotFoundError
笔者在使用pydub.AudioSegment把mp3文件转换为wav时出现FileNotFoundError错误。代码如下:# -*- coding: utf-8 -*-"""@author: xiemanrui@time: 2018-05-05 20:15:09"""# 需要安装pydub、ffmpegimport pydubimport ioimport wavede...
2018-05-05 20:29:33 8822 7
原创 树莓派安装gTTS运行遇到ImportError: cannot import name InsecureRequestWarning
树莓派安装gTTS运行运行时遇到了如下错误: from requests.packages.urllib3.exceptions import InsecureRequestWarningImportError: cannot import name InsecureRequestWarning这是因为已经安装的requests库和gTTS版本对应不上。解决: 更新requests库...
2018-04-21 23:39:18 2181
原创 Pycharm使用技巧:创建py文件时自动生成注释:作者、时间、文件名等
我们在写代码创建文件时有时候希望在文件顶部自动生成一些注释,如作者、创建时间等信息,不用每次手动输入,毕竟“偷懒”是程序员的优良传统。PyCharm提供了自动生成文件顶部注释的功能。使用:File-》Setting-》File and Code Templates-》Python Script效果如下:...
2018-03-16 12:26:14 12015 2
原创 PyCharm使用技巧:Annotate(在编辑框显示注释)
下面介绍的功能只有受控了的文件才有,不受控的文件是没有该功能的。 打开一个受控的文件,在编辑框左边点击右键选中Annotate选项,编辑框左边会显示注释区。 把鼠标放在不同的颜色块中会显示不同的注释。 关闭注释:编辑框左边点击右键选中Close Annotations。 ...
2018-03-15 12:33:00 5793 4
原创 PyCharm使用技巧:Shitf+Enter/Ctrl+Alt+Enter(快速另起一行)
1.Shitf+Enter:快速向下另起一行我们在使用PyCharm写代码的时候,想要向下换行的话可以把光标挪到行末再按Enter键,这样很麻烦。那么有没有快捷键呢?有,就是Shitf+Enter,效果如下:2.Ctrl+Alt+Enter:快速向上另起一行有向下换行就会有向上换行,快捷键为Ctrl+Alt+Enter,效果如下:...
2018-03-15 12:10:56 4906
原创 PyCharm使用技巧:快速隐藏停靠栏
我们在使用笔记本编程的时候,常常会觉得编辑区空间不够大,这时候就可以通过隐藏左边和下方的停靠栏来为编辑区腾腾出空间。点击停靠栏右上方的小箭头可以隐藏停靠栏。那么有没有快速隐藏左边和下方的停靠栏的方法?有,双击编辑区上方文件名的文件名即可,效果图见下图:再次双击编辑区上方文件名即可恢复左边和下方停靠栏,效果见下图:
2018-02-04 23:27:47 8075 3
原创 Python中文文档网站推荐:http://python.usyiyi.cn/
一译中文文档提供了Python官方文档和一些重要的第三方模块的中文翻译。
2017-11-13 17:32:38 14049 2
原创 Python编程之四小天王
Python四小天王:《Effective Python》、《Python高级编程》、《精通Python设计模式》、《Python高手之路》
2017-11-10 12:29:47 2043
原创 Python编程之四书五经
Python四书五经 :《流畅的Python》、《Python Cookbook》、《Python 高级编程 (第2版)》、《利用Python进行数据分析》
2017-11-05 14:38:14 1827 3
原创 Python通过上下文管理器使用进程池multiprocessing.Pool
Python可以通过上下文管理器使用进程池multiprocessing.Pool。
2017-11-05 13:15:07 2005
原创 关于Python3的collections.namedtuple和functools.namedtuple的探讨
Python3的collections和functools模块都有namedtuple类,是同一个对象。
2017-10-28 01:40:24 708 1
原创 PyCharm使用技巧:Save File as Template(把当前文件保存为模板)
PyCharm使用技巧:Save File as Template(把当前文件保存为模板)
2017-10-22 21:30:17 8733
原创 PyCharm使用技巧:Navigate-》File(快速查找文件)
PyCharm提供了快速查找文件的功能,快捷键为Ctrl+Shift+N,或者从菜单Navigate-》File打开查找文件界面。
2017-10-14 22:36:59 12416
原创 Python资源汇集网站推荐:awesome-python
看到awesome字样你就会知道awesome-python 是一个Python资源汇集网站,按功能归类了很多库。
2017-10-14 22:16:21 3487
原创 Python网站推荐:Pythontutor(可视化代码执行过程)
Pythontutor是一个在线以图形化的方式显示代码执行过程的的网站,借助于图形化我们可以更好地理解代码。
2017-10-14 21:42:29 33909 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人