Передать список членов одной переменной в функции Python - PullRequest
0 голосов
/ 05 февраля 2019

Я вижу функцию Python (извлечение) в библиотеке, например:

def print_len(list_members):
    my_list = [list_members]
    print(len(my_list))

Я хочу вызвать функцию с 2 или более членами списка и ожидаю, что результат больше 1. Например,

a = "one, two"
print_len(a)

a = "one", "two"
print_len(a)

a = ["one", "two"]
print_len(a)

Но результаты всех испытаний равны 1. Как я могу вызвать эту функцию, чтобы получить результат, который больше 1?

1 Ответ

0 голосов
/ 05 февраля 2019

Ваша print_len функция не делает то, что вы думаете:

def print_len(list_members):
    my_list = [list_members]
    print(len(my_list))

Это принимает параметр list_members.Допустим, значением этого является ваш последний пример ["one", "two"].Итак, длина list_members равна 2. Это то, что вы ожидаете.

Но тогда ваш код делает

    my_list = [list_members]

, поэтому my_list выглядит так: [["one", "two"]] ..другими словами, список из одного элемента.Этот элемент сам имеет 2 элемента.Но ваш код принимает длину внешнего списка, которая всегда будет равна 1. Вместо этого выведите len(list_members).

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