Heim  >  Artikel  >  Datenbank  >  So verwenden Sie Redis zum Speichern von Freundschaftsbeziehungen in Python

So verwenden Sie Redis zum Speichern von Freundschaftsbeziehungen in Python

WBOY
WBOYnach vorne
2023-05-27 15:19:201117Durchsuche

  Ich habe in letzter Zeit darüber nachgedacht, wie perfekt Redis für die Speicherung eines

  einfachen sozialen Diagramms wäre. Ich ging davon aus, dass es relativ wenige Codezeilen sein würden

  und dass es auch sauberer Code sein würde. Hier ist es also: ein grundlegender sozialer Graph, der auf Redis basiert Kurz gesagt, um Speicherplatz in Redis zu sparen. Self.FOLLOWS_KEY = 'F'. FOLLOWERS_KEY = 'f'. Self.BLOCKS_KEY = 'B'  auf jeden Fall folgen (self, from_user, to_user):

  forward_key = '%s:%s' % (self.FOLLOWS_KEY, from_user)

  forward = self.ring.sadd(forward_key, to_user)

  reverse_key = '%s:% s' % (self.FOLLOWERS_KEY, to_user)

self.ring.sadd(reverse_key, from_user) = reverse

  return vorwärts und rückwärts

  怎样用Redis存储好友关系-python版

  def unfollow(self, from_user, to_user):

  forward_key = '%s:%s' % (self.FOLLOWS_KEY, from_user)

  forward = self.ring.srem(forward_key, to_user)

  reverse_key = '%s:%s' % (self .FOLLOWERS_KEY, to_user) 从环中删除指定用户,操作后的环称为„umgekehrt“, 并返回删除的用户. „Python Removed_user = self.ring.srem(reverse_key, from_user) reverse = self.ring # 将删除操作后的环赋值给 reverse ```

  vorwärts und rückwärts zurückkehren

  def block(self, from_user, to_user):

  forward_key = '%s:%s' % (self.BLOCKS_KEY, from_user)

  forward = self.ring.sadd( forward_key, to_user)

  reverse_key = '%s:%s' % (self.BLOCKED_KEY, to_user)

self.ring.sadd(reverse_key, from_user) = reverse

  return vorwärts und rückwärts

  def unblock(self, from_user, to_user):

  forward_key = '%s:%s' % (self.BLOCKS_KEY, from_user)

  forward = self.ring.srem(forward_key, to_user)

  reverse_key = '%s:%s' % (self.BLOCKED_KEY, to_user) 从环中删除指定用户,操作后的环称为„umgekehrt“, 并返回删除的用户. „Python Removed_user = self.ring.srem(reverse_key, from_user) reverse = self.ring # 将删除操作后的环赋值给 reverse ```

  vorwärts und rückwärts zurückkehren

  def get_follows(self, user):

  follows = self.ring.smembers('%s:%s' % (self.FOLLOWS_KEY, user))

  blocked = self .ring.smembers('%s:%s' % (self.BLOCKED_KEY, user))

  return list(follows.difference(blocked))

  def get_followers(self, user):

  followers = self.ring .smembers('%s:%s' % (self.FOLLOWERS_KEY, user))

  blocks = self.ring.smembers('%s:%s' % (self.BLOCKS_KEY, user))

  return list( follower.difference(blocks))

  def get_blocks(self, user):

  return list(self.ring.smembers('%s:%s' % (self.BLOCKS_KEY, user)))

  def get_blocked( self, user):

  return list(self.ring.smembers('%s:%s' % (self.BLOCKED_KEY, user)))

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Redis zum Speichern von Freundschaftsbeziehungen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen