为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 python 中添加包含另一组列表的列表?

如何在 python 中添加包含另一组列表的列表?

慕尼黑的夜晚无繁华 2022-07-12 18:05:04
我有一组列表,其中包含另一组列表。我只想添加它们,但我不能,因为 python 不允许我。我是 python 编程的新手,虽然它看起来很简单,但这件事让我烦了 2 个小时。这是列表:list = ['60.50', '120', '60', '185', '183.84', '134.50', '369.65', '112.50', '141.54', '141.60', '80', '125', '509.40', '99', '148', '86', '234.40', '135', '81', '97', '395', '193', '185', '261', '72', '157', '138', '90', '101', '72', '125', '116', '106', '118', '123', '128', '107', '81', '204.40', '136', '170.32', '136', '88.50', '114', '76', '125.72']我已经尝试了多种方法,但仍然无法添加这些值。请帮忙
查看完整描述

2 回答

?
当年话下

TA贡献1890条经验 获得超9个赞

从评论中,您似乎想要获取一个十进制数字的字符串列表,并将它们加在一起。


我不会为此使用浮点数,而是使用Decimal. 首先将所有项目转换为小数,然后将它们相加。


(也不要叫它list)


from decimal import Decimal


l = [...]

print(sum(Decimal(i) for i in l))

如果列表有多个维度,您需要先展平列表。我们可以创建一个函数来对通用多维列表中的数字求和。


from decimal import Decimal


def flatten(l):

    for i in l:

        if isinstance(i, str):

            yield Decimal(i)

        else:

            yield from flatten(i)


l = [[...], ...]


print(sum(flatten(l))


查看完整回答
反对 回复 2022-07-12
?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

确保首先以 numpy 数组 ar pandas 数据框的形式打印你的列表,然后简单地使用 sum() 函数......希望它有帮助



查看完整回答
反对 回复 2022-07-12
  • 2 回答
  • 0 关注
  • 135 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信