如何使用 Python 检查 RethinkDB 中是否存在 table

How to check if table exists in RethinkDB with Python

我想在尝试创建 table 之前使用 python 客户端检查 table 是否已经存在于 RethinkDB 中。如果您尝试创建 table 并且它存在,则会引发错误。那么我该如何检查呢?我的代码如下所示:

from rethinkdb import RethinkDB
from faker import Faker
from faker_music import MusicProvider
from random import random
from time import sleep

fake = Faker()
fake.add_provider(MusicProvider)
r = RethinkDB()

r.connect( "localhost", 28015).repl()


r.db("test").table_create("instruments").run()

def instrument()->dict:
  instrument = {"name":fake.music_instrument(),"category":fake.music_instrument_category()}
  return instrument

initial = [instrument() for _ in range(3)]
r.table("instruments").insert(initial).run()

while True:
  check = random()
  if check < 0.5 and check >0.25:
    r.table("instruments").insert(instrument()).run()

  if  check < 0.25:
    cursor = r.table("instruments").filter( r.row["category"].count() > 2 ).delete().run()

  sleep(1)

这个有效:

try:
  r.db("test").table_drop("instruments").run()
except:
  pass

r.db("test").table_create("instruments").run()

我在任何地方都找不到建议的方法。他们也许应该添加这样的方法。