如何用Python从Firebase数据库获取指定键的对应值?
通过Firebase引用获取指定键值的正确方法
直接通过字典键名访问是最可靠、便捷的方式,完全不会受键顺序变化的影响,比用索引靠谱多了。
具体实现步骤
假设你用Python的firebase-admin SDK获取数据,原来的代码大概是这样:
ref = db.reference('你的数据路径') data = ref.get() # 此时data是完整字典:{'ATK': 1, 'DEF': 1, 'experience': 80}
不需要用索引,直接通过键名取值:
# 直接取experience对应的值 experience = data['experience'] print(experience) # 输出 80
如果担心键不存在导致报错,推荐用get()方法,还能指定默认值:
# 键存在返回对应值,不存在返回None experience = data.get('experience') # 或者指定默认值,比如键不存在时返回0 experience = data.get('experience', 0)
为什么索引不可靠
虽然Python 3.7及以上的字典是有序的,但Firebase返回的键顺序可能随后端逻辑、数据更新而变化,依赖索引取值属于依赖实现细节的坏写法,很容易出问题。直接用键名才是符合字典设计的标准用法,稳定又直观。
内容的提问来源于stack exchange,提问作者Duc Huy Nguyen Tran
相关产品推荐
相关产品推荐

