如何让地图模式正确返回函数中的方块列表?

时间:2017-02-21 04:15:26

标签: python list testcase

我应该使用地图模式制作一个结果列表,用于对输入列表中的数字进行平方。

def square_all(list1):
    list1 = []
    squared = map(lambda x: x**2, list1)
    return squared

我以为我理解了地图模式的语法,但是当我运行我的测试用例时,它继续告诉我我的函数返回一个空列表,我不知道为什么。

import unittest
import map
import point

class TestCases(unittest.TestCase):
    def test_1(self):
        nums = [2,3,4]
        self.assertEqual(map.square_all(nums), [4,9,16])



if __name__ == '__main__':
   unittest.main()

1 个答案:

答案 0 :(得分:3)

您正在初始化list1=[],删除它并且它将起作用

def square_all(list1):
    squared = map(lambda x: x**2, list1)
    return squared

如果您想使用for循环执行此操作:

def square_all(list1):
    squared=[]
    for x in list1:
        squared.append(x**2)
    return squared