Mam zagnieżdżoną listę o nazwie model i chcę używać swoich przedmiotów jako wejść

scipy.stats.kruskal()     

To znaczy, jeśli moja zagnieżdżona lista ma n = 5 list wewnątrz, chcę uzyskać

scipy.stats.kruskal(model[0],model[1],model[2],model[3],model[4])

Jednakże zmiany w zależności od aplikacji, a czasami zamiast 5, mogę mieć 3 itd.

Moim początkowym pomysłem było

    s=''
    for i in range(n):
        a='model_errors[{}],'.format(i)
        s+=a
    s=s[:-1]
    scipy.stats.kruskal(eval(s))

Jednak eval () zwraca początkową zagnieżdżoną listę, a nie terminy oddzielone przecinkiem. Próbowałem wiele różnych rzeczy, ale żaden z nich nie powiódł się.

1
corsetti 14 październik 2020, 20:10

1 odpowiedź

Najlepsza odpowiedź

Możesz użyć *, może przekazać listę do funkcji, a ** dla argumentów słów kluczowych, takich jak słowniki. Więc spróbuj scipy.stats.kruskal(*model)

1
Wasif 14 październik 2020, 17:16