[英]Python Function To Return List
我在這里寫了Python新手函數,只將偶數作為列表返回,但我做不到。 你能幫忙嗎? 這是我的初始函數,可以正常工作,但結果未列出:
def myfunc (*args):
for num in args:
if num % 2 == 0:
print (num)
例如,使用以下參數調用函數時:
myfunc(1,2,3,4,5,6,7,8,9,10)
我正進入(狀態:
2
4
6
8
10
但我需要將它們列入列表中,我想念的是什么? 這也不起作用:
list = []
def myfunc (*args):
for num in args:
if num % 2 == 0:
print (list[num])
非常感激!
def myfunc (*args):
mylist = []
for num in args:
if num % 2 == 0:
mylist.append(num)
return mylist
您的函數未返回任何內容。 您可能希望通過以下方式獲取元素
def myfunc (*args):
for num in args:
if num % 2 == 0:
yield num
或創建一個臨時列表:
def myfunc (*args):
lst = []
for num in args:
if num % 2 == 0:
lst.append(num)
return lst
您可以在REPL中檢查返回的值:
>> type(print(num)) # print() returns None
NoneType
說明:簡而言之, yield
每次迭代該函數時都會返回一個元素-並且僅返回一次元素。 因此該函數也稱為“生成器”。 關於yield
有一個很好的帖子 。 我無法解釋得更好。
更新:不要使用list
作為變量名, list
是一種內置方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.