[英]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.