2017-02-03 98 views
0

我是新來的python所以請原諒我,如果這是一個愚蠢的問題,但我想從函數返回一個列表。這是我迄今爲止的,但我無處可去。有人能告訴我我在這裏做錯了嗎?從Python中的函數返回列表

我試圖做一個簡單的函數調用make_a_list(1, 5, "Christian")返回,看起來像這樣的列表:[1, 5, "Christian]

def make_a_list(): 
    my_list = ["1", "5", "Christian"] 
    for item in my_list: 
    return my_list 

my_list = make_a_list() 

print(my_list) 
+4

你不需要寫「for my_list中的item:」,你已經在它之前的行中創建了列表,所以只需要返回它。 –

回答

4

可以是這樣做的:

def make_a_list(*args): 
    return list(args) 

print(make_a_list(1, 5, "Christian")) # [1, 5, "Christian"] 

但是你做不必因爲有內建的Python已經這麼做了:

print(list((1, 5, "Christian"))) # [1, 5, "Christian"] 

注意,第二個選項是傳遞整個tuple而不是單獨的元素。

+0

謝謝你 - 這工作完美。 –

0

我不知道這是否是你想要的,問題是不清楚

def make_a_list(*args): 
    def inner(): 
     return list(args) 
    return inner 

那麼您需要使用這樣

make_list_1 = make_a_list(1, 5, "Christian") # make_list_1 is a function 
make_list_2 = make_a_list(2, 10 "A different list") # make_list_2 is a different function 

list_1 = make_list_1() # list_1 is a list 
print(list_1) # that we can print 
0

在Python中你不需要做出專用功能來創建一個列表。您可以非常輕鬆地創建列表。例如:

list1 = ['one', 'two', 'three'] 
print(list1) 

>>['one','two', 'three'] 

查看以下網站獲取更多信息,不僅僅是關於列表,還有其他python概念。 https://www.tutorialspoint.com/python/python_lists.htm