Python专辑
文章平均质量分 61
记录使用python开发过程中遇到的问题,思考和学习内容
FeelTouch Labs
这个作者很懒,什么都没留下…
展开
-
This version of ChromeDriver only supports Chrome version 100
根据报错提示,发现是版本不一致,根据对应关系。,重新下载正确的驱动版本即可。原创 2024-08-05 14:40:49 · 921 阅读 · 0 评论 -
序列化工具---对象序列化类库MsgPack介绍
转自:http://www.cppfans.org/1410.htmlMessagePack(以下简称MsgPack)一个基于二进制高效的对象序列化类库,可用于跨语言通信。它可以像JSON那样,在许多种语言之间交换结构对象;但是它比JSON更快速也更轻巧。支持Python、Ruby、Java、C/C++等众多语言。比Google Protocol Buffers还要快4倍。代码转载 2015-05-27 19:15:33 · 4071 阅读 · 0 评论 -
UnicodeDecodeError: 'ascii' codec can't decode byte错误解决方案
异常信息如下:sh-4.2$ python begin.py Traceback (most recent call last): File "/usr/lib64/python2.7/logging/__init__.py", line 874, in emit stream.write(fs % msg.encode("UTF-8"))UnicodeDecodeError...原创 2020-01-04 14:01:19 · 12076 阅读 · 8 评论 -
Zookeeper实现配置管理和集群管理的应用实战[Pyhon版]
Kafka在很多公司被用作分布式高性能消息队列,kafka之前我只用过redis的list来做简单的队列处理,也还算好用,可能数据量比较小,也是单机运行,未出现过问题,用作轻量级消息队列还是比较好用的。而redis的作者antirez,设计redis的初衷并不是用来做消息队列,但用它做消息队列的人貌似还挺多,以至于后来antirez后来新开了个项目disque,专门用来做消息队列,但这个不是本文的...转载 2019-11-18 00:11:27 · 464 阅读 · 0 评论 -
Python使用Redis的zset的zadd正确姿势
习惯了在Java中直接执行client.zadd(key, score, member)来实现想zset集合中添加成员数据,但是在python中这就有点行不通了,会报错,错误实例如下:rc.zadd(HISTORY_OPEN_TERM_ZSET, member, score)异常信息如下:Connected to pydev debugger (build 182.5107.22)...原创 2019-11-16 17:04:14 · 12204 阅读 · 0 评论 -
Redis如何找出并快速删除亿级指定前缀的key
背景由于Redis的单线程服务模式,命令keys *会阻塞正常的业务请求,不建议使用keys * pattern的方法进行查询,可能会使服务器卡顿而出现事故。如何获取指定的 key?可以采用Redis提供的SCAN命令。SCAN 命令是一个基于游标的迭代器(cursor based iterator):SCAN 命令每次被调用之后都会向用户返回一个新的游标, 用户在下次迭代时会使用这个新游...转载 2019-10-14 00:20:54 · 1316 阅读 · 0 评论 -
启动rocketmq-client-python测试遇到的问题解决方法记录
环境和方式macOS MoJave采取动态库方式error1➜ test git:(master) ✗ /usr/bin/python TestSendMessages.py__________Python Version:___________2.7.10 (default, Aug 17 2018, 19:45:58)[GCC 4.2.1 Compatible Appl...原创 2019-02-20 01:05:32 · 7573 阅读 · 0 评论 -
Python中dumps, loads dump, load用法详解
json 模块提供了一种很简单的方式来编码和解码JSON数据。 其中两个主要的函数是 json.dumps() 和 json.loads()json.dumps()将一个Python数据结构转换为jsonimport jsondata = { 'name' : 'ACME', 'shares' : 100, 'price' : 542.23}jso...原创 2018-10-22 00:16:23 · 6639 阅读 · 0 评论 -
python中yield深入理解
欢迎使用Markdown编辑器写博客yield关键字用来定义生成器(Generator),其具体功能是可以当return使用,从函数里返回一个值,不同之处是用yield返回之后,可以让函数从上回yield返回的地点继续执行。也就是说,yield返回函数,交给调用者一个返回值,然后再“瞬移”回去,让函数继续运行, 直到吓一跳yield语句再返回一个新的值。 使用yield返回后,调用者实际得转载 2016-08-21 23:07:07 · 3273 阅读 · 0 评论 -
Python进阶---python实现substring截取子字符串
python中没有substring的定义,但是有更轻巧的实现,可以通过数组的slice来截取字符串例如,在java中我们这样截取字符串:String s = "Hello OutOfMemory.CN";String small = s.subString(2,4);而在python中,我们这样实现:s = "Hello OutOfMemory.CN"small = s[2原创 2015-10-25 17:03:04 · 69362 阅读 · 1 评论 -
Python进阶---python判断字符串是否包含子字符串的方法
python的string对象没有contains方法,不用使用string.contains的方法判断是否包含子字符串,但是python有更简单的方法来替换contains函数。方法1:使用 in 方法实现contains的功能:site = 'http://www.jb51.net/'if "jb51" in site: print('site contains j转载 2015-10-25 17:00:48 · 16871 阅读 · 1 评论 -
Python进阶---python strip() split()函数实战
先看一个例子:>>> ipaddr = 10.122.19.10 File "", line 1 ipaddr = 10.122.19.10 ^SyntaxError: invalid syntax>>> ipaddr = "10.122.19.10">>> ipaddr.strip()'10.122.19.10'原创 2015-10-25 16:53:50 · 47692 阅读 · 1 评论 -
python进阶---python字符串和整形的相互转换和多个字符分割(split)字符串
print int("42"), str(42) # convert from/to stringprint int("42") + 1 # force additionpython中字符串自带的split方法一次只能使用一个字符对字符串进行分割,但是python的正则模块则可以实现多个字符分割import rere.split('-|_','sharejs_haotu-icon100')输出结果转载 2015-10-25 16:30:22 · 3291 阅读 · 0 评论 -
Python进阶---self和__init__的含义
背景回复:我写的一些Python教程,需要的可以看看中SongShouJiong的提问:Python中的self,init的含义是啥?为何要有self,__init这些东西?解释之前,先说几句1.到目前为止,我虽然也已写了不算很少的python的代码,但是,还真的没有太多接触self和init这两个东西。只能算是大概了解。2.为了搞懂其含义,现学现卖,去看了些资料,然后整理出来。其中,很可能理解有误转载 2015-07-21 23:19:55 · 1318 阅读 · 0 评论 -
Python进阶---python pass用法
1、空语句 do nothing 2、保证格式完整 3、保证语义完整 4、以if语句为例: C/C++中写法: if(true) ; // do nothing else {} // do nothingpython中写法: if true: pass # do nothing else: print “do something.”测试程序:定义一个空函数转载 2015-07-21 23:17:45 · 1564 阅读 · 0 评论 -
Python进阶---python assert用法
1、assert语句用来声明某个条件是真的。 2、如果你不确信某个你使用的列表中至少有一个元素,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。 3、当assert语句失败的时候,会引发一AssertionError。测试程序: mylist = [‘item’] assert len(mylist)转载 2015-07-21 23:16:36 · 2323 阅读 · 1 评论 -
Python进阶---目录名的拼接
原创 2015-07-20 22:34:42 · 16630 阅读 · 2 评论 -
Python进阶---一Python小测试
如上:不存在m1,所以None如上:m3是空,但是存在;m4不存在原创 2015-07-20 22:53:21 · 1231 阅读 · 0 评论 -
Python脚本测试---列表的排序和删除
>>> a = []>>> a.append(33)>>> a.append(44)>>> a.append(22)>>> a.append(34)>>> a[33, 44, 22, 34]>>> a.sort()>>> a[22, 33, 34, 44]>>> a.pop()44>>> a[22, 33, 34]>>> a.pop()34>>> a[22, 33原创 2015-06-01 21:43:29 · 994 阅读 · 0 评论 -
Python工具easy_install 和 pip的安装
原创 2015-05-26 21:07:01 · 1270 阅读 · 0 评论 -
Python中字典容器dict默认按照键值从大到小存储的证明
在做项目中无意中发现,dict是按照键值排好序存储的。原创 2015-05-28 09:37:36 · 2021 阅读 · 0 评论 -
提高Python运行效率的六个窍门
转自:http://bbs.chinaunix.net/thread-4177456-1-1.htmlPython是一门优秀的语言,它能让你在短时间内通过极少量代码就能完成许多操作。不仅如此,它还轻松支持多任务处理,比如多进程。不喜欢Python的人经常会吐嘈Python运行太慢。但是,事实并非如此。尝试以下六个窍门,来为你的Python应用提速。窍门一:关键代码使用外部功能包转载 2015-05-25 11:38:40 · 917 阅读 · 0 评论 -
python两种遍历字典(dict)的方法比较
python以其优美的语法和方便的内置数据结构,赢得了不少程序员的亲睐。其中有个很有用的数据结构,就是字典(dict),使用非常简单。说到遍历一个dict结构,我想大多数人都会想到 for key in dictobj 的方法,确实这个方法在大多数情况下都是适用的。但是并不是完全安全,请看下面这个例子:复制代码 代码如下:#这里初始化一个dict>>> d = {'a':1转载 2015-05-25 14:28:19 · 3152 阅读 · 0 评论 -
Python 时间处理
一、简介time模块提供各种操作时间的函数说明:一般有两种表示时间的方式:第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一的第二种以数组的形式表示即(struct_time),共有九个元素,分别表示,同一个时间戳的struct_time会因为时区不同而不同year (four digits, e.g. 1998)mont转载 2015-05-25 09:34:34 · 799 阅读 · 0 评论 -
zeromq札记---python
三种基本模式(它有很多种)1. 请求应答模式(req 和 rep) 消息双向的,有来有往,req端请求的消息,rep端必须答复给req端2. 订阅发布模式 (sub 和 pub) 消息单向的,有去无回的。可按照发布端可发布制定主题的消息,订阅端可订阅喜欢的主题,订阅端只会收到自己已经订阅的主题。发布端发布一条消息,可被多个订阅端同事收到。3. push转载 2015-05-24 18:30:58 · 1702 阅读 · 0 评论 -
Win7 (64)+ VS2010 + Python2.7.9 安装 gevent 0.13.8
Win7是64位的1. 下载gevent安装包去gevent官网下载个source包, 地址是这里 http://pypi.python.org/packages/source/g/gevent/我下载到的是 gevent-0.13.8.tar.gz,解压2. 安装假设解压到A目录下,则cmd命令窗口 cd 到该目录下,运行里面的fetch_libevent原创 2015-05-24 15:45:27 · 2440 阅读 · 0 评论 -
Python找不到***模块的connect属性错误
转自:http://blog.csdn.net/gukesdo/article/details/7016787今天遇到一个问题,自己把测试脚本命名成了pyodbc,然后运行就一直不通过,报的错误是找不到pyodbc模块中connect属性,一直搞了半个小时也没有解决;最后发现不是脚本代码的问题,而是脚本命名的问题,如果自己的测试脚本命名成pyodbc,则在impor转载 2015-05-24 15:08:41 · 4280 阅读 · 0 评论 -
python 文件 .py .pyc .pyw .pyo .pyd
DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。打不开,不过可以使用反汇编;PYD是一种PYTHON动态模块。实质上还是dll文件,只是改了后缀为PYD,pyd: 扩展模块,一般用C或C++编写,其实可以说是一种更优秀的D语言编写的。源自:http://my.oschina.net/renwofei423/blog/17404通常原创 2015-05-24 14:59:50 · 19227 阅读 · 1 评论 -
如何高效通过网络搜索Python第三方功能模块
比如要查找Python如何访问数据库,查找关键词如果是“Python访问数据库”,“Python如何访问数据库”就不会有很好的检索结果;要搜索的关键词是“Python数据库模块”就会很好的结果所以如果以后要使用Python实现什么功能,就搜索“Python xxx模块”转载 2015-05-24 15:03:48 · 1061 阅读 · 0 评论 -
Python模块常用的几种安装方式
Python模块安装方法一、方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib二、方法2: 多文件模块,带setup.py下载模块包,进行解压,进入模块文件夹,执行:python setup.py install三、 方法3:easy_install 方式先下载ez_setup.py,运行python ez_setup 进行easy_install工具的安装,之...转载 2015-05-24 14:44:12 · 3526 阅读 · 0 评论 -
WIN7(64位)安装Python模块py-radix
前言:py-radix是用C语言实现的python模块,实现了radix算法(最长前缀匹配算法,用于路由查找)py-radix模块下载:我下载的最新的版本 py-radix-0.5.tarpy-radix模块安装:1,解压文件,进入目录 \py-radix-0.52,打开cmd ,进入相应目录,执行setup.py执行命令依次如下:python setup.py原创 2015-05-24 14:18:56 · 2072 阅读 · 0 评论 -
:PyCharm中的那些实用功能记录
译自:http://nicoddemus.github.io/articles/pycharm/可用版本:社区版本logr 或者商业版本+注册机,我使用的是商业版+注册机声明我无意批评Eclipse或者PyDev,我用了它们很多年,它们很棒!请记住,这是我的个人经验,你的或许有所不同。实时比较PyCharm 对一个文件里你做的改动保持实时的跟踪,通过在编翻译 2015-05-21 10:22:49 · 4443 阅读 · 0 评论 -
PyCharm快捷键和常用设置
http://blog.csdn.net/pipisorry/article/details/39909057在PyCharm /opt/pycharm-3.4.1/help目录下可以找到ReferenceCard.pdf快捷键英文版说明PyCharm Default KeymapPyCharm3.0默认快捷键(翻译的)1、编辑(Editing)Ctrl + Space转载 2015-05-21 10:29:27 · 947 阅读 · 0 评论 -
python学习疑点总结
1. 疑惑:a. for score in data[1:]: 解答:将score一一赋data中从1号(第二个)开始到最后一个元素的值 b. for I in range(3): 解答 : 将i赋予从零到三的值。2. 配置系统环境变量:在Path变量中把Python安装路径,加到它的结尾。注意,要用英文分号和前面已有的内容隔开原创 2015-05-20 09:34:21 · 1596 阅读 · 0 评论