通过列表成员到一个变量在Python功能

问题描述 投票:-1回答:1

我看像一个图书馆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?

python list
1个回答
1
投票

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)而不是长度。

© www.soinside.com 2019 - 2024. All rights reserved.