Error:TypeError:无法将序列乘以'list'类型的非整数。

问题描述 投票:-2回答:2

对于下面的代码,我得到TypeError: can't multiply sequence by non-int of type 'list'

square = lambda x : x*x
nums = [1,2,3,4,5,6,7,8,9,10]
square_nums = []
for x in nums:
square(nums)
square_nums.append(x)
print (square_nums)
python python-3.x
2个回答
1
投票

您输入的代码有误:

square(nums)应该为square(x),因为您想对x求平方

并将您的代码简化为:

square = lambda x : x*x
nums = [1,2,3,4,5,6,7,8,9,10]
square_nums = [square(x) for x in nums]
print (square_nums)

结果:

[1、4、9、16、25、36、49、64、81、100]


0
投票

怎么样

nums = [1,2,3,4,5,6,7,8,9,10]
square_nums = [x*x for x in nums]
print(square_nums)

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
© www.soinside.com 2019 - 2024. All rights reserved.