返回顶部
首页 > 资讯 > 精选 >redis怎么去重字符串
  • 556
分享到

redis怎么去重字符串

2024-04-02 19:04:59 556人浏览 薄情痞子
摘要

Redis去重字符串的示例:基于Redis实现Bloomfilter去重,代码如下:# encoding=utf-8importredisfromhashlibimportmd5classSimpleHash(object):def__in

redis怎么去重字符串

Redis去重字符串的示例:

基于Redis实现Bloomfilter去重,代码如下:

# encoding=utf-8

importredis

fromhashlibimportmd5

classSimpleHash(object):

def__init__(self,cap,seed):

self.cap=cap

self.seed=seed

defhash(self,value):

ret=0

foriinrange(len(value)):

ret+=self.seed*ret+ord(value[i])

return(self.cap-1)&ret

classBloomFilter(object):

def__init__(self,host='localhost',port=6379,db=0,blockNum=1,key='bloomfilter'):

"""

:param host: the host of Redis

:param port: the port of Redis

:param db: witch db in Redis

:param blockNum: one blockNum for about 90,000,000; if you have more strings for filtering, increase it.

:param key: the key's name in Redis

"""

self.server=redis.Redis(host=host,port=port,db=db)

self.bit_size=1<<31# Redis的String类型最大容量为512M,现使用256M

self.seeds=[5,7,11,13,31,37,61]

self.key=key

self.blockNum=blockNum

self.hashfunc=[]

forseedinself.seeds:

self.hashfunc.append(SimpleHash(self.bit_size,seed))

defisContains(self,str_input):

ifnotstr_input:

returnFalse

m5=md5()

m5.update(str_input)

str_input=m5.hexdigest()

ret=True

name=self.key+str(int(str_input[0:2],16)%self.blockNum)

forfinself.hashfunc:

loc=f.hash(str_input)

ret=ret&self.server.getbit(name,loc)

returnret

definsert(self,str_input):

m5=md5()

m5.update(str_input)

str_input=m5.hexdigest()

name=self.key+str(int(str_input[0:2],16)%self.blockNum)

forfinself.hashfunc:

loc=f.hash(str_input)

self.server.setbit(name,loc,1)

if__name__=='__main__':

""" 第一次运行时会显示 not exists!,之后再运行会显示 exists! """

bf=BloomFilter()

ifbf.isContains('Http://www.baidu.com'):# 判断字符串是否存在

print'exists!'

else:

print'not exists!'

bf.insert('http://www.baidu.com')

--结束END--

本文标题: redis怎么去重字符串

本文链接: https://lsjlt.com/news/115085.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • redis怎么去重字符串
    redis去重字符串的示例:基于Redis实现Bloomfilter去重,代码如下:# encoding=utf-8importredisfromhashlibimportmd5classSimpleHash(object):def__in...
    99+
    2024-04-02
  • php字符串怎么去掉重复字符
    去重步骤:1、使用str_split()函数将字符串转为字符数组,语法“str_split(字符串,1)”;2、使用array_unique()函数去除字符数组中的重复值,语法“array_unique(字符数组)”;3、使用implode...
    99+
    2022-08-08
    php php字符串
  • java怎么去除字符串中的重复字符
    可以使用Set集合来去除字符串中的重复字符。Set是一个不允许有重复元素的集合,可以用来存储字符串中的字符。具体步骤如下:1. 创建...
    99+
    2023-09-15
    java
  • javascript怎么去掉字符串重复值
    这篇文章主要介绍“javascript怎么去掉字符串重复值”,在日常操作中,相信很多人在javascript怎么去掉字符串重复值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • 使用JavaScript怎么实现字符串去重
    这篇文章将为大家详细讲解有关使用JavaScript怎么实现字符串去重,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。java基本数据类型有哪些Java的基本数据类型分为:1、整数类型,用来表...
    99+
    2023-06-14
  • Python中字符串和列表怎么去重
    这篇文章主要介绍“Python中字符串和列表怎么去重”,在日常操作中,相信很多人在Python中字符串和列表怎么去重问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中字符串和列表怎么去重”的疑惑有所...
    99+
    2023-07-05
  • php怎么去掉字符串中的某串字符串
    本文操作环境:Windows7系统、PHP7.1版、Dell G3电脑。php怎么去掉字符串中的某串字符串?可以使用str_replace函数或者preg_replace函数将指定字符串替换为空,也就是说删除掉指定字符串:<php $...
    99+
    2020-06-16
    php
  • php中字符串如何去重
    使用php对字符串进行去重的方法首先,新建一个php项目文件;php项目文件新建好后,在文件中随机定义一个字符串,并赋值;$str1 = 'sgfdhkgsilskfsduhsw';字符串定义好后,使用str_split()...
    99+
    2024-04-02
  • PHP redis Sorted Set实现字符串去重代码示例
    可以使用 Redis 的 Sorted Set 有序集合来实现字符串去重的功能。 具体步骤如下: 首先将要去重的字符串作为 Sorted Set 的 member 值,可以考虑把相同...
    99+
    2023-05-20
    redis如何去重 php redis redis sorted set
  • php中怎么去掉字符串中重复的字母
    小编给大家分享一下php中怎么去掉字符串中重复的字母,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php去掉重复字母的方法:首先使用str_split()函数将字...
    99+
    2023-06-15
  • php怎么去掉字符串末尾字符
    这篇文章将为大家详细讲解有关php怎么去掉字符串末尾字符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php去掉字符串末尾字符的方法:1、直接使用substr()函数倒序裁掉最后一位字符,语法“...
    99+
    2023-06-14
  • python字符串怎么去掉指定字符
    Python中可以使用`str.replace()`方法来替换字符串中的指定字符。以下是一个示例:```pythonstring =...
    99+
    2023-09-20
    python
  • java字符串怎么去掉特殊字符
    可以使用正则表达式来去掉字符串中的特殊字符。下面是一个示例代码: import java.util.regex.Pattern; ...
    99+
    2023-10-26
    java
  • jquery如何去掉重复字符串
    这篇文章主要介绍“jquery如何去掉重复字符串”,在日常操作中,相信很多人在jquery如何去掉重复字符串问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jquery如何去掉...
    99+
    2024-04-02
  • c语言字符串如何去除重复字符
    可以使用两个指针来去除重复字符。首先,创建一个空的字符串,用于存储结果。然后,遍历原始字符串中的每一个字符。对于每个字符,检查它是否...
    99+
    2023-09-05
    c语言
  • python怎么重复字符串_python重复字符串教程
    1、首先打开pycharm,进入到pycharm主页。 2、然后新建python脚本,右键--点击new--点击 python file。 3、输入一段字符串,代码:s = "-"。...
    99+
    2024-04-02
  • php数组中怎么去除重复的字符串
    在PHP编程中,数组常常被用作存储和处理数据的工具。然而,当数组中包含重复的字符串,这可能会导致一些问题。幸运的是,PHP提供了一些内置函数和技巧,以便去除数组中的重复字符串。在本文中,我们将学习如何使用PHP编写一个去除数组中重复字符串的...
    99+
    2023-05-14
    php
  • python怎么去除空字符串
    有几种方法可以去除字符串中的空字符串: 使用循环和条件语句: def remove_empty_strings(strings)...
    99+
    2024-02-29
    python
  • php怎么去掉字符串前两位字符
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php去掉字符串前两位字符方法1:使用substr()函数<php $str = "Hello World!"; echo $str...
    99+
    2018-05-16
    php 字符串
  • php怎么去除字符串前两位字符
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php去除字符串前两位字符1、使用substr()函数substr() 函数可以从字符串的指定位置截取一定长度的字符,返回字符串的提取部分,如果失败...
    99+
    2021-01-05
    php 字符串
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作