如何在python中使用lambda求和字符串元素?

问题描述 投票:0回答:3

我需要对每2个元素求和(以int表示)

我有以下代码:

array = '1 3 5 7 9'
lst = map(lambda x: x+x, array.strip().split(' '))
print(list(lst))

输出:

[['11','33','55','77','99']

是否有将int转换添加到lambda / map函数的方法,该方法最终会将我的lambada函数视为2个元素的加法?

我知道我可以创建一个显式函数来执行此操作,但是我想知道是否存在lambda方式。谢谢

python-3.x list lambda int addition
3个回答
1
投票

只需在您的函数中转换为int:

array = '1 3 5 7 9'
lst = map(lambda x: int(x)+int(x), array.strip().split(' '))
print(list(lst))

2
投票

默认情况下,将值作为字符串,因为原始值是字符串。要应用任何数字运算,只需使用int(x)

强制将其强制转换为整数值
array = '1 3 5 7 9'
lst = map(lambda x: int(x) + int(x), array.strip().split(' '))
print(list(lst))

0
投票

使用input()或raw_input()读取要查询列表长度的输入数字。初始化一个空列表lst = []。使用for循环读取每个数字。在for循环中,将每个数字附加到列表中。现在,我们使用预定义的函数sum()来查找列表中所有元素的总和。打印结果。

© www.soinside.com 2019 - 2024. All rights reserved.