我想使用map命令从一个范围创建一个项目列表。我有以下代码,它们应该取两个数字(firstnum
和secondnum
)之间的范围和一个lambda语句,该语句表示要在两个数字之间递增并创建myList
结果(在范围的两端之间)。但是我的语法错了,不知道为什么......
["myList"] = map(lambda x, y: x + 1, range(firstnum..secondnum))
答案 0 :(得分:1)
这将是有效的语法:
>>> list(map(lambda x: x + 1, range(2, 12)))
[3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
但是你可以更简单地得到相同的结果:
>>> list(range(3, 13))
[3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
或者更一般:
>>> firstnum = 2
>>> secondnum = 12
>>> (list(map(lambda x: x + 1, range(firstnum, secondnum))) ==
list(range(firstnum + 1, secondnum + 1)))
True