如何从UnQLite集合中提取字段值

时间:2019-11-14 04:42:08

标签: python nosql in-memory-database unqlite

db = UnQLite('test.db')
data = db.collection('data')
print(data.fetch(0))

此打印

{'id': b'abc', 'type': b'business', 'state': b'AZ', 'latitude': 33.3482589, 
 'name': b"ABC Restaurant", 'full_address': b'1835 E ABC Rd, Ste C109, Phoenix, AZ 85284',
 'categories': [b'Restaurants', b'Buffets', b'Italian'],
 'open': True, 'stars': 4, 'city': b'Phoenix', 'neighborhoods': [], 
 '__id': 0, 'review_count': 122, 'longitude': -111.9088346}

如何获取城市的“凤凰”值?

type(data.fetch(0))打印类“ dict”

我正在查看UnQlite文档,但发现不多。请帮忙。

2 个答案:

答案 0 :(得分:1)

您已经有了字典,因此只需要搜索键

x = {'id': b'abc', 'type': b'business', 'state': b'AZ', 'latitude': 33.3482589, 
 'name': b"ABC Restaurant", 'full_address': b'1835 E ABC Rd, Ste C109, Phoenix, AZ 85284',
 'categories': [b'Restaurants', b'Buffets', b'Italian'],
 'open': True, 'stars': 4, 'city': b'Phoenix', 'neighborhoods': [], 
 '__id': 0, 'review_count': 122, 'longitude': -111.9088346}
x['city']
#b'Phoenix'

这里Phoenix不是str对象,而是byte,因此,如果要将其作为字符串,可以使用decode

进行转换。
x['city'].decode()
#'Phoenix'

或者您的情况:

data.fetch(0)['city'].decode()

答案 1 :(得分:0)

我知道了。做一个collection.fetch(0).get('city')给出值。