- 浏览: 2652545 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
python提供的短链接服务
http://code.activestate.com/recipes/576918/
## {{{ http://code.activestate.com/recipes/576918/ (r3) ''' Short URL Generator =================== Python implementation for generating Tiny URL- and bit.ly-like URLs. A bit-shuffling approach is used to avoid generating consecutive, predictable URLs. However, the algorithm is deterministic and will guarantee that no collisions will occur. The URL alphabet is fully customizable and may contain any number of characters. By default, digits and lower-case letters are used, with some removed to avoid confusion between characters like o, O and 0. The default alphabet is shuffled and has a prime number of characters to further improve the results of the algorithm. The block size specifies how many bits will be shuffled. The lower BLOCK_SIZE bits are reversed. Any bits higher than BLOCK_SIZE will remain as is. BLOCK_SIZE of 0 will leave all bits unaffected and the algorithm will simply be converting your integer to a different base. The intended use is that incrementing, consecutive integers will be used as keys to generate the short URLs. For example, when creating a new URL, the unique integer ID assigned by a database could be used to generate the URL by using this module. Or a simple counter may be used. As long as the same integer is not used twice, the same short URL will not be generated twice. The module supports both encoding and decoding of URLs. The min_length parameter allows you to pad the URL if you want it to be a specific length. Sample Usage: >>> import short_url >>> url = short_url.encode_url(12) >>> print url LhKA >>> key = short_url.decode_url(url) >>> print key 12 Use the functions in the top-level of the module to use the default encoder. Otherwise, you may create your own UrlEncoder object and use its encode_url and decode_url methods. Author: Michael Fogleman License: MIT Link: http://code.activestate.com/recipes/576918/ ''' DEFAULT_ALPHABET = 'mn6j2c4rv8bpygw95z7hsdaetxuk3fq' DEFAULT_BLOCK_SIZE = 24 MIN_LENGTH = 5 class UrlEncoder(object): def __init__(self, alphabet=DEFAULT_ALPHABET, block_size=DEFAULT_BLOCK_SIZE): self.alphabet = alphabet self.block_size = block_size self.mask = (1 << block_size) - 1 self.mapping = range(block_size) self.mapping.reverse() def encode_url(self, n, min_length=MIN_LENGTH): return self.enbase(self.encode(n), min_length) def decode_url(self, n): return self.decode(self.debase(n)) def encode(self, n): return (n & ~self.mask) | self._encode(n & self.mask) def _encode(self, n): result = 0 for i, b in enumerate(self.mapping): if n & (1 << i): result |= (1 << b) return result def decode(self, n): return (n & ~self.mask) | self._decode(n & self.mask) def _decode(self, n): result = 0 for i, b in enumerate(self.mapping): if n & (1 << b): result |= (1 << i) return result def enbase(self, x, min_length=MIN_LENGTH): result = self._enbase(x) padding = self.alphabet[0] * (min_length - len(result)) return '%s%s' % (padding, result) def _enbase(self, x): n = len(self.alphabet) if x < n: return self.alphabet[x] return self._enbase(x / n) + self.alphabet[x % n] def debase(self, x): n = len(self.alphabet) result = 0 for i, c in enumerate(reversed(x)): result += self.alphabet.index(c) * (n ** i) return result DEFAULT_ENCODER = UrlEncoder() def encode(n): return DEFAULT_ENCODER.encode(n) def decode(n): return DEFAULT_ENCODER.decode(n) def enbase(n, min_length=MIN_LENGTH): return DEFAULT_ENCODER.enbase(n, min_length) def debase(n): return DEFAULT_ENCODER.debase(n) def encode_url(n, min_length=MIN_LENGTH): return DEFAULT_ENCODER.encode_url(n, min_length) def decode_url(n): return DEFAULT_ENCODER.decode_url(n) if __name__ == '__main__': for a in range(0, 200000, 37): b = encode(a) c = enbase(b) d = debase(c) e = decode(d) assert a == e assert b == d c = (' ' * (7 - len(c))) + c print '%6d %12d %s %12d %6d' % (a, b, c, d, e) ## end of http://code.activestate.com/recipes/576918/ }}}
发表评论
-
python读取图片exif信息
2014-11-06 10:53 2400f = open("/home/admin/tlo ... -
Python程序的执行原理
2014-04-14 15:44 17231. 过程概述 Python先把代码(.py文件)编译成字 ... -
如何创建一个短链服务
2013-12-26 16:23 0参考: http://stackoverflow.com ... -
python 解析命令参数(argument)组件argparse
2013-12-11 17:35 1400参考: http://youngsterxyf.githu ... -
pyhon命令行工具optparse
2013-11-10 16:27 1028使用python optparse 可以创建命令行工具,下面 ... -
Python在豆瓣的应用
2013-10-21 10:46 1194Python在豆瓣的应用,hongqiangning分享 ... -
用python爬虫抓站的一些技巧总结
2013-10-10 14:12 1680学用python也有3个多月了,用得最多的还是各类爬虫 ... -
python小技巧
2013-10-10 11:50 7321. 声明长度256的数组 a=[0]*256 ... -
使用tesseract-ocr破解网站验证码
2013-10-09 10:25 1212原文:使用tesseract-ocr破解网站验证码 ... -
和豆瓣CMGS交流
2013-06-20 17:36 5838蒋云鹏: 在?CMGS: 在蒋 ... -
python乱码问题('ascii' codec can't encode character u'\u4e2d' in position 0)
2013-05-20 19:03 4245>>> k = u'中' >> ... -
python shell 交互模式
2013-04-28 22:17 1628python 通过code模块可以很容易的进入交互模式: ... -
jython和gunicorn性能测试对比
2013-04-13 13:03 1291helloworld,笔记本上: gunicorn ... -
python的mysql客户端-MySQLdb
2013-04-04 10:13 1153平时的主要编程语言是Java,开发时也主要用Mysql,经常 ... -
Python几种并发实现方案的性能比较
2013-03-18 21:14 2956原文:http://www.elias.cn/P ... -
python汉字和Unicode码(utf-8)之间的转换(Pack/Unpack)
2013-03-18 21:13 1642保证你要转换的字符串编码为UTF8,如果不是,请iconv ... -
python反序列化的坑
2013-01-06 18:06 1278今天遇到python一个坑,调用memcached的get_m ... -
sqlalchemy connection pool.py 源代码
2012-12-29 22:58 2235把 sqlalchemy pool源代码copy下来,有空看看 ... -
SQLAlchemy简单介绍
2012-12-28 22:41 0文档参考:http://docs.sqlalchemy.org ... -
pymysql简单使用
2012-12-28 12:38 2117import pymysql conn = pymysq ...
相关推荐
标题中提到了Python Generator,这是指Python中的生成器,一种特殊的迭代器,能够让用户在循环中逐步产生一个序列中的值,而不是一次性返回整个序列。在描述中提到的是David Beazley所作的关于Python生成器的系统...
标题中的"generator_sound_frequency_python_generator_"暗示我们讨论的是一个使用Python编写的频率发生器,它能够生成.wav音频文件,并在该文件中实现频率的扫频。这个工具可能用于测试音频设备,声学研究,或者...
URL Generator(URL生成器)是来自国外的一款URL生产工具,URL Generator界面整洁、功能强大,能够一键生产URL,快捷方便、小巧又实用,URL Generator将根据您输入的字段值创建一个URL列表,然后可以从程序中保存URL...
在Python的世界里,`generator3-0.0.7-py3-none-any.whl` 是一个特定版本的Python库包,主要用于处理生成器(generator)相关的功能。这个压缩包文件是一个wheel格式的软件包,它是Python的一种二进制分发格式,旨在...
资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:datamodel_code_generator-0.10.3-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
Python中的`yield`关键字和Generator函数是Python编程中一种高效且节省内存的机制,它们用于创建迭代器。本文将深入探讨`yield`的工作原理以及如何使用Generator函数。 首先,让我们理解`yield`的关键作用。在普通...
Python生成器generator简介 iteration, iterable, iterator 迭代(iteration):在python中迭代通常是通过for…in…来实现的.而且只要是可迭代对象iterable,都能进行迭代. 可迭代对象(iterable):Python中的任意的对象...
资源分类:Python库 所属语言:Python 资源全名:rosinstall_generator-0.1.22.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
python库。 资源全名:generator_tools-0.3.6.win32-py2.5.exe
资源分类:Python库 所属语言:Python 资源全名:htg_url_generator-0.1.9.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
语言:English 此扩展名使您可以从Couleur Citron的新URL缩短器创建shorturl。 只需单击缩短器图标即可生成一个随机的缩短的URL。 要自定义您的网址,请访问http://coulc.it/并选择自定义网址。
标题 "generator_sweep_frequency_python_generator_audio_" 暗示我们关注的是一个使用Python生成音频文件的项目,其中涉及了频率扫描或扫频技术。扫频是电子和通信领域中的常见技术,用于测试设备对不同频率的响应...
本文实例分析了Python生成器generator用法。分享给大家供大家参考,具体如下: 生成器generator本质是一个函数,它记住上一次在函数体中的位置,在生成器函数下一次调用,会自动找到该位置,局部变量都保持不变 l =...
《Python库:dungeon-generator-0.0.2——打造迷宫生成的魔法世界》 在编程领域,Python因其简洁易读的语法和丰富的库支持而备受青睐。今天我们要探讨的是一个名为“dungeon-generator”的Python库,版本为0.0.2,...
《Python库sitema_generator-0.5.2-py2.7.egg:构建网站地图的利器》 在IT行业中,Python作为一种强大的开发语言,因其简洁、易读的语法和丰富的库支持而广受开发者喜爱。在搜索引擎优化(SEO)领域,一个重要的...
这个扩展允许你从Couleur Citron的新网址缩短器中创建shorturl。 只需点击缩短图标即可生成随机缩短的网址。 要自定义您的网址,请转到http://coulc.it/并选择自定义网址。 支持语言:English
资源分类:Python库 所属语言:Python 资源全名:datamodel-code-generator-0.6.17.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
Frequency generator in python. Generates .wav file wit sweeping frequency. No external library needed.