Должен ли я добавить или присоединиться к списку dict и как в Python? - PullRequest
0 голосов
/ 08 марта 2019

Используя этот код, я смог просмотреть несколько экземпляров атрибутов и извлечь Имя и Фамилию, если они соответствовали критериям.Результаты списка диктов.Как мне сделать так, чтобы все эти результаты, соответствующие критериям, возвращались как полное имя, каждое на отдельной строке в виде текста?

my_snapshot = cfm.child('teamMap').get()
for players in my_snapshot:
    if players['age'] != 27:
    print({players['firstName'], players['lastName']})

Результаты отчета о печати

{'Chandon',  'Sullivan'}
{'Urban', 'Brent'}

Ответы [ 2 ]

1 голос
/ 08 марта 2019

Вы ищете это:

 print(players['firstName'], players['lastName'])

Это выдаст:

Chandon Sullivan
Urban Brent

Ваша первоначальная пробная версия просто поместила элементы в набор {}и затем напечатал набор без видимой причины.

Редактировать:

Вы также можете, например, объединить firstName и lastName в одну строкуи затем добавьте комбо к спискам.Затем вы можете делать со списком все, что вам нужно:

names = []
my_snapshot = cfm.child('teamMap').get()
for players in my_snapshot:
    if players['age'] != 27:
        names.append(f"{players['firstName']} {players['lastName']}")

Если вы используете версию Python ниже 3.6 и не можете использовать f-strings, вы можете сделать последнюю строку, например, так::

names.append("{} {}").format(players['firstName'], players['lastName'])

Или, если вы предпочитаете:

names.append(players['firstName'] + ' ' + players['lastName'])
0 голосов
/ 08 марта 2019

Хорошо, я понял, добавив имя и фамилию и создав список для найденных критериев. Затем я преобразовал список в строку для отображения на устройстве.

    full_list = []

    my_snapshot = cfm.child('teamMap').get()
    for players in my_snapshot:
        if players['age'] != 27:
        full_list.append((players['firstName'] + " " + players['lastName']))

    send_message('\n'.join(str(i) for i in full_list))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...