python3 mmh3安装及使用方法

yipeiwu_com6年前Python基础

mmh3安装方法

哈希方法主要有MD、SHA、Murmur、CityHash、MAC等几种方法。mmh3全程murmurhash3,是一种非加密的哈希算法,常用于hadoop等分布式存储情境中,在anaconda中安装使用命令

pip install mmh3

问题1

在这里插入图片描述

报错如下:

Microsoft Visual C++ 14.0 is required

显示缺少C++ 14的库文件,选择登录网站  https://visualstudio.microsoft.com/downloads/

下载Visual Studio2015,自动安装后运行

pip install mmh3

问题2

在这里插入图片描述

报错如下:

error: command 'cl.exe' failed: No such file or directory

在Visual Studio Installer中(工具栏-获取工具与功能),选择添加红框标注功能


在这里插入图片描述


在这里插入图片描述

其他说明

建议安装的版本的Visual Studio2015,因为2015对应的是C++ 14的版本,如果是python2的mmh3需要对应C++ 9的版本,这主要是因为python2是基于C++ 9编译的,python3是基于C++ 14编译的,亲测安装VS2019并没有解决C++ 14缺失的问题。

mmh3使用

在这里插入图片描述

样例:

>>> import mmh3
>>> mmh3.hash('foo') 
# 32 bit signed int
-156908512
>>> mmh3.hash('foo', 42) 
# uses 42 for its seed
-1322301282
>>> mmh3.hash('foo', signed=False) 
# 32 bit unsigned int (since Version 2.5)
4138058784
>>> mmh3.hash64('foo') 
# two 64 bit signed ints (by using the 128-bit algorithm as its backend)
(-2129773440516405919, 9128664383759220103)
>>> mmh3.hash64('foo',signed =False)          
 # two 64 bit unsigned ints
(16316970633193145697, 9128664383759220103)
>>> mmh3.hash128('foo', 42)                  
# 128 bit unsigned int
215966891540331383248189432718888555506
>>> mmh3.hash128('foo', 42, signed = True)      
# 128 bit signed int
-124315475380607080215185174712879655950
>>> mmh3.hash_bytes('foo')                   
# 128 bit value as bytes
'aE\xf5\x01W\x86q\xe2\x87}\xba+\xe4\x87\xaf~'

总结

以上所述是小编给大家介绍的python3 mmh3安装及使用方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python中的split()函数和os.path.split()函数使用详解

Python中有split()和os.path.split()两个函数: split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表。 os.path.spli...

kafka监控获取指定topic的消息总量示例

我就废话不多说了,直接 上代码吧! import kafka.api.PartitionOffsetRequestInfo; import kafka.common.TopicAnd...

Python计算时间间隔(精确到微妙)的代码实例

Python计算时间间隔(精确到微妙)的代码实例

使用python中的datetime import datetime oldtime=datetime.datetime.now() print oldtime; x=1 while...

python数据处理之如何选取csv文件中某几行的数据

前言 有些人看到这个问题觉得不是问题,是嘛,不就是df.col[]函数嘛,其实忽略了一个重点,那就是我们要省去把csv文件全部读取这个过程,因为如果在面临亿万级别的大规模数据,得到的结果...

python实现socket+threading处理多连接的方法

python实现socket+threading处理多连接的方法

一.运行效果 先说两句,之前我在网上找的相关文章标题上写的是处理多连接,尼玛,全是假的。网上那些,根本不能异步处理多连接,不能主动给客户端发消息。 在服务端控制台输入1,查看在线人数。...