Извлечение строк определенного размера из списка - PullRequest
0 голосов
/ 09 февраля 2020

Скажем, у меня есть список имен:

names = ["David", "Lee", "Sara", "Daniel", "Nick"]

Я хочу переместить элементы списка с количеством символов менее 5 (не включая 5) в новый список с именем short_names, который будет выглядеть как это:

short_name ["Lee", "Sara", "Nick"]

Как я могу сделать это с помощью для l oop? Я пытаюсь найти длину символов в каждом элементе списка.

Ответы [ 2 ]

1 голос
/ 09 февраля 2020

Для простой однострочности вы можете использовать понимание списка:

short_name = [name for name in names if len(name) < 5]

Если вы хотите, чтобы он был более читабельным (для начинающих), используйте «традиционный» для стиля l oop:

short_name = []
for name in names:
    if len(name) < 5:
        short_name.append(name)

Два кода обеспечивают одинаковый вывод.

0 голосов
/ 09 февраля 2020

Чтобы найти длину строки, используйте встроенную функцию len:

>>> len("abcde") == 5
True

Поскольку это выглядит как домашнее задание, я оставлю вам возможность включить это в oop структура для создания списка short_names.

В качестве пищи для размышления добавлю, что эту проблему можно решить с помощью одной строки Python, используя понимание списка .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...