Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 函数,该函数返回一个新列表,其中包含原始列表中可被函数参数中给定数字整除的值_Python_List_For Loop - Fatal编程技术网

Python 函数,该函数返回一个新列表,其中包含原始列表中可被函数参数中给定数字整除的值

Python 函数,该函数返回一个新列表,其中包含原始列表中可被函数参数中给定数字整除的值,python,list,for-loop,Python,List,For Loop,我需要一个函数,它接受一个数组,迭代它的值,对于它的每一个可以被3整除但没有余数的值,将它添加到一个新数组中。 以下是我到目前为止的情况: def exampleFour(array,num): temp = [] for i in array: if i % num == 0: temp.append(i) return temp print(exampleFour([3,5,9,6,7,15,24],3)) 但是,当我运行这个函数时

我需要一个函数,它接受一个数组,迭代它的值,对于它的每一个可以被3整除但没有余数的值,将它添加到一个新数组中。 以下是我到目前为止的情况:

def exampleFour(array,num):
    temp = []
    for i in array:
       if i % num == 0:
         temp.append(i)
    return temp

print(exampleFour([3,5,9,6,7,15,24],3))

但是,当我运行这个函数时,它只返回[3]。有人能帮我理解为什么吗?

您的代码为我返回了正确的结果,但您可以很容易地做到这一点。 试试这个:

new_list = [i for i in array if i%num ==0]

您的代码在我的系统中返回
[3,9,6,15,24]
。。这几乎肯定是一个缩进错误;代码应该按照这里所示的方式工作。检查缩进(隐藏选项卡?),确保返回语句不在
for
循环中。没有错误。我从这里复制了它,它成功地运行了,产生了预期的结果。不管显示了什么,您可以缩进
return
语句,因此它落在
if
中,并立即返回。是的,@taurus05。我是这么说的。刚刚给出了一个更好的解决方案。您甚至可以尝试这样做:
new\u list=list(filter(lambda x:x%num==0,array))