1

我有包含一些firebase数据的数组。在那个数组里面我有字典。这是我的数组:

[{'name': 'mehmet Tilsed'}, {'name': 'mahmut Tilsed'}, {'name': 'mre Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}]

我想获取每个项目的值。我怎样才能做到?

这是我的代码:

firebase = Firebase(config)

db = firebase.database()

all_users = db.child("users").child("Joe").child("users").get()

for user in all_users.each():
   userArray.append(user.val())



item1.update(userArray[2])   // In here I take only given items value. I want to get all values.

for k in item1.values():
   print(k)

for j in userArray:
    print(j)
4

2 回答 2

3

如果我正确理解您的问题,您想打印数组中的所有名称吗?我不知道 item1 或 userArray 是什么,因为您忽略了它,但这很好用:

array = [{'name': 'mehmet Tilsed'}, {'name': 'mahmut Tilsed'}, {'name': 'mre Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}]
for name in array:
        print(name['name'])


输出:

mehmet Tilsed
mahmut Tilsed
mre Tilsed
Joe Tilsed
Joe Tilsed
Joe Tilsed
于 2019-11-13T10:57:14.920 回答
2

如果您想要列表中的那些,您可以尝试:

from operator import itemgetter

>>> arr = [{'name': 'mehmet Tilsed'}, {'name': 'mahmut Tilsed'}, {'name': 'mre Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}, {'name': 'Joe Tilsed'}]

>>> lst = list(map(itemgetter('name'),arr))
>>> lst
['mehmet Tilsed',
 'mahmut Tilsed',
 'mre Tilsed',
 'Joe Tilsed',
 'Joe Tilsed',
 'Joe Tilsed']

或者,

>>> lst = [dct['name'] for dct in arr]
>>> lst
['mehmet Tilsed',
 'mahmut Tilsed',
 'mre Tilsed',
 'Joe Tilsed',
 'Joe Tilsed',
 'Joe Tilsed']
于 2019-11-13T10:58:08.483 回答