Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 编写一个最长的函数,该函数还包含一个列表ll。它应该返回ll中最长的列表(引用)_Python - Fatal编程技术网

Python 编写一个最长的函数,该函数还包含一个列表ll。它应该返回ll中最长的列表(引用)

Python 编写一个最长的函数,该函数还包含一个列表ll。它应该返回ll中最长的列表(引用),python,Python,如果在长度上存在联系,那么它应该返回这些列表中最早的列表(即,在ll中索引最小的列表)。最后,如果ll为空,那么函数应该返回None,而不是list。 同样,您不应该以任何方式修改输入列表。此外,您应该返回(引用)ll的现有元素之一(或None),而不是创建新列表 这就是我现在所拥有的,但是当我运行测试时,它们失败了 def longest(ll): if len(ll) == 0: return None index = 0 for i in range(1, len(

如果在长度上存在联系,那么它应该返回这些列表中最早的列表(即,在ll中索引最小的列表)。最后,如果ll为空,那么函数应该返回None,而不是list。 同样,您不应该以任何方式修改输入列表。此外,您应该返回(引用)ll的现有元素之一(或None),而不是创建新列表

这就是我现在所拥有的,但是当我运行测试时,它们失败了

def longest(ll):
  if len(ll) == 0:
    return None 
  index = 0 
  for i in range(1, len(ll)):
    if len(ll[i] > len(ll[index])):
     
有人知道我如何修复代码以满足问题的要求吗

**提示: 这里,“acculator”是ll的一个元素(索引或引用其中任何一个都可以,我们将在下面的特定Python语句中使用前者)。与计算最大值相比,唯一的本质区别在于用于更新“累加器”的条件取决于它的一个属性(特别是它的长度),而不是累加器本身的值。虽然术语“累加器”在这个设置中听起来可能有点奇怪,但它只是意味着(总是)它的更新规则取决于它以前的值(通常还有其他值)。具体来说,下一个 列表(参考)的值要么保持不变,要么设置为ll的当前元素,这取决于后者的长度是否大于前者的长度。换句话说,假设l是for循环的变量 迭代列表中的元素。然后,在循环结束时,如果我们希望最大值保存(引用)具有最大值的l(由元素类型上的>确定),那么我们的更新规则将类似于,例如。,
如果l>最大:最大=l(在几种可能的书写方式中)。但是,如果我们希望最大值最终保留(对)长度最大的l的引用,那么更新规则将简单地更改为,例如,如果len(l)>len(max):max=l。

您可以获得所有列表的长度,然后找到最大长度,然后获得(第一个)索引该最大值并返回原始列表中的该元素

def最长(ll):
如果len(ll)==0:
一无所获
长度=[len(l)表示ll中的l]
返回ll[length.index(max(length))]

你能举个例子吗?为什么
索引=1
?那是打字错误吗?我没有确切的例子。但根据我的解释,我会输入一个类似于[1,2,3,4]、[5,6,7,8,9,10]、[11,12,13,14,15,16,17]的列表。基于此,我认为我需要生成一个引用,该引用是其中最长的列表。您应该在
if
语句之后做些什么?如果下一个列表更长,该怎么办?也许
索引
应该改变?这个答案确实不符合作业的精神,可能不会得到及格分数。如果您只是想找到最长的,
returnmax(ll,key=len)
比这个好得多。但这项任务是试图教一些别的东西。