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 SVM 线性分类模型的实现

python SVM 线性分类模型的实现

运行环境:win10 64位 py 3.6 pycharm 2018.1.1 导入对应的包和数据 import matplotlib.pyplot as plt import num...

python网络编程学习笔记(八):XML生成与解析(DOM、ElementTree)

xml.dom篇     DOM是Document Object Model的简称,XML 文档的高级树型表示。该模型并非只针对 Python,而是一种普通...

Python排序搜索基本算法之冒泡排序实例分析

Python排序搜索基本算法之冒泡排序实例分析

本文实例讲述了Python排序搜索基本算法之冒泡排序。分享给大家供大家参考,具体如下: 冒泡排序和选择排序类似,也是第n次把最小的元素排在第n的位置上,也是该元素的绝对位置,只是冒泡排序...

python pandas 组内排序、单组排序、标号的实例

python pandas 组内排序、单组排序、标号的实例

摘要:本文主要是讲解一下,如何进行排序。分为两种情况,不分组进行排序和组内进行排序。什么意思呢?具体来说,我举个栗子。 ****注意**** 如果只是单纯想对某一列进行排序,而不进行打序...

浅谈python连续赋值可能引发的错误

今天写的代码片段: X = Y = [] .. X.append(x) Y.append(y) 其中x和y是读取的每一个数据的xy值,打算将其归入列表之后绘散点图,但是绘图出来却是...