9 xiemanR

尚未进行身份认证

我要认证

个人公众号:Python简史

等级
TA的排名 3k+

使用Python描述符实现单例模式

一、什么是描述符在Python中实现了__get__/__set__/__delete__魔术方法的类就是描述符,通过描述符我们可以反向控制引用了描述符的类。如以下的代码所示,在普通的类中,类B引用了类A,类A是不能控制类B。class A: passclass B: a = A()B.a但是,实现了描述符协议的类就不一样了,如以下的代码所示,我们可以通过...

2019-07-13 18:11:13

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

关于日志的那些事儿

日志的作用1.审计商业分析:比如从日志中提取用户行为(比如,一个点击事件流)并结合用户的其他详情(比如,最终购买行为)来生成报告或者推荐相关产品。 接口调用情况统计:调用量、调用成功率、平均响应时间 软件使用情况统计2.诊断根据日志的错误信息的上下文定位和追踪问题 根据相关日志信息了解软件的运行状态 ...3.监控告警在运维中,经常需要实时监控日志内容,根据某种策略来判...

2018-12-26 23:51:28

Redis 安全

通过设置密码可以使redis服务更安全。默认情况下是没有密码的,也就是说无需密码就可以连接redis服务器。>>> import redis>>> r.config_get()['requirepass']''>>>通过config_set函数设置密码:>>> import redis>&gt

2018-12-23 22:55:45

Redis 数据备份与恢复

备份:save函数用于创建当前数据库的备份。>>> import redis>>> r = redis.Redis()>>> r.save()True>>>调用save函数后将在 redis 安装目录中创建dump.rdb文件。 数据恢复:如需恢复数据,则将备份文件 (dump.rdb) ...

2018-12-23 22:23:20

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

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

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

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

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

安装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

查看Python文档的几种方法

查看文档是一个程序员的基本功,这里简单介绍几种查看Python文档的方法,下面以struct模块为例。1.help在交互模式下,help函数是获取文档的好帮手,使用非常简单。>>> import struct>>> help(struct)Help on module struct:NAME structDESCRIPTION...

2018-12-23 16:53:13

Python书籍推荐:《Python3标准库》

        最近双十一气氛弥漫在整个互联网,不买点东西总觉得缺了什么。在逛某东的时候无意中发现了这本刚出版没多久的书,一时心血来潮立即加入购物车,这不对啊,价格这么贵,而且优惠套路太多了。去当当一看,五折,99.5块,果断拿下。        Python的库太庞大的,确实需要一本书来梳理一下,最好是按库的功能来粗略地分类,方便我们通过目录快速查阅。而《Python3标准库》就是这样一本书...

2018-11-11 15:23:56

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

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

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

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

Python获取对象属性的4种方法

本文将简单介绍四种获取对象的方法。假如有以下的类:classPerson(object):def__init__(self,name,age):self.name=nameself.age=agedef__str__(self):return'name=%s,age=%s'...

2018-09-15 16:24:46

两种兼容Python2和Python3的导入库的方法

Python3和Python2是不兼容的,但是由于一些历史遗留问题,比如一些服务器只安装有Python2,一些安装有Python3,所以我们在实际写代码的时候就不得不考虑兼容Python2和Python3了。下面简单介绍两种兼容Python2和Python3的导入库的方法。 一:使用ImportError以configparser为例。读写配置模块在Python2中是大写开头的的C...

2018-08-26 15:19:06

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

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!