0
플로트 또는 임의로 중첩 된 수레 목록 인 요소를 사용하여 목록을 취하고 같은 길이의 목록을 반환하는 함수를 만들려고합니다. 각 요소는 평균으로 대체됩니다.임의로 중첩 된 목록의 각 요소의 평균 찾기
즉. [1,2.875] 인쇄해야 여기 lst = [1,[2,[3,[4,[5]]]]] #average of lst[0] = 1 average of lst[1] = (((((4+5)/2)+3)/2)+2)/2 print(Avg(lst))
는 내가 지금까지 가지고있는 작업은 다음과 같습니다
def Avg(lst,n=1):
if lst = [] and n > 1:
return 0
elif lst = []:
return lst
elif type(lst) == float:
return lst
elif type(lst[0]) == float and n > 1:
return (lst[0] + Avg(lst[1:]))/len(lst)
elif type(lst[0]) == list:
total = 0
length = 0
for e in lst[0]:
total += Avg(e)
length += 1
return [total/length] + Avg(lst[1:])
return [lst[0]] + Avg(lst[1:])
은 누군가가 올바른 방향으로 날 포인트?