lista list

0

czesc, nie moge rozw. tego problemu, wie ktos w czym szkopuł:

chce tworzyc liste list, gdzie funkcja subSet zwraca liste bez losowych elementow, niestety otrzymuje liste takich samych list np. dla input [1,2,3,4,5] -> [[1, 5], [1, 5], [1, 5], [1, 5], ...
gdy printuje subSet jest ok ale przy append cos zle zapisuje

def subSet(S):
    S.remove(random.choice(S))
    return S

SS = [1,2,3,4,5]

S = [subSet(i,SS) for i in range(5)]

0

W ostatniej linijce czemu do subSet podajesz 2 argumenty?

Przecież ta funkcja przyjmuje tylko jeden argument.

3
def subSet(S):
    r = random.choice(S)
    S.remove(r)
    return S

SS = [1,2,3,4,5]

S = [subSet(SS[:]) for x in range(5)]

[:] to kopia tabeli SS (fajna nazwa :D). Jak wrzucisz cala tablice to wszystkie iteracje beda wykonywane na niej i za kazdym razem bedziesz otrzymywal ta sama tablice

1 użytkowników online, w tym zalogowanych: 0, gości: 1