我对它的问题感到困惑.
写入函数
mssl()(最小和子列表),将整数列表作为输入.然后,它计算并返回输入列表的最大总和子列表的总和.最大总和子列表是输入列表的子列表(切片),其条目总和最大.空子列表定义为总和0.例如,列表的最大总和子列表[4, -2, -8, 5, -2, 7, 7, 2, -6, 5]是[5, -2, 7, 7, 2]其条目的总和19.
如果我要使用这个函数,它应该返回类似的东西
>>> l = [4, -2, -8, 5, -2, 7, 7, 2, -6, 5]
>>> mssl(l)
19
>>> mssl([3,4,5])
12
>>> mssl([-2,-3,-5])
0
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
这是我目前的尝试,但它不会产生预期的结果:
def mssl(x):
' list ==> int '
res = 0
for a in x:
if a >= 0:
res = sum(x)
return res
else:
return 0
Run Code Online (Sandbox Code Playgroud) 我想弄清楚一个问题而且我很困惑.基本上我有一个清单,它应该代表银行对账单.我正在尝试将列表添加到一起,因此将应该代表撤销的负数加在一起,并将正数加在一起以表示存款.到目前为止我得到了
def statement(l):
deposit = 0
withdrawl = 0
for a in l:
a = sum(l)
for b in l:
if b == -b:
b = sum(b)
return [a,-b]
Run Code Online (Sandbox Code Playgroud)
但是当我这样做的
时候它statement([30.95,-15.67,45.56,-55.00,43.78])
会返回[49.620000000000005, -43.78]它应该返回[120.29,-70.67]可以有人帮忙吗?
谢谢!