» »

[python]kako naj pretvorim nested list v set?

[python]kako naj pretvorim nested list v set?

Isotropic ::

imam nested list
a = [[2,3,4],[4,5,6]]
kako naj ga pretvorm v set (flatten v bistvu) z list comprehension?
probal sem [[i for i in el] for el in a]
ampak mi vrne nazaj samo originalno strukturo. rad bi se pa izognil zanki, predvsem zaradi berljivosti in kratkosti.
pa pozneje bom moral vse to pretvoriti v set.

l0g1t3ch ::

reduce(lambda x, y: x+y, [[1, 2, 3], [4, 5, 6], [7, 8, 9]])
[1, 2, 3, 4, 5, 6, 7, 8, 9]

set(reduce(lambda x, y: x+y, [[1, 2, 3], [4, 5, 6], [7, 8, 9]]))
set([1, 2, 3, 4, 5, 6, 7, 8, 9])


Z list comprehension pa pomoje ne gre.

NoComent! ::

Malo krajse:
set([i for el in a for i in el])
#Ali pa z reduce
reduce(set.union, a, set())

Isotropic ::

[y for x in list for y in x]

mi pa ni zelo jasno, kaj naredi tale koda

Zgodovina sprememb…

NoComent! ::

Enako kot:
a = []
for x in list:
    for y in x:
        a.append(y)

Isotropic ::

pa obstaja kaksna moznost, da bil nested list comprehension ze od starta (da bi tako oblikoval list compr) flat?
kako naj pa naredim se za en level globlje? nekaj sicer ze caram, sam mi ne rata (po istem principu pridem samo do [ [], [] ]

Zgodovina sprememb…



Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Coursera naloga (python)

Oddelek: Programiranje
161791 (1419) jype
»

Java-random-polje

Oddelek: Programiranje
6876 (755) LeQuack
»

[python] Seznami, terke

Oddelek: Programiranje
61940 (1763) no1pheeew
»

Python iskanje podvojenih vrednosti

Oddelek: Programiranje
181407 (1120) BlueRunner
»

python problem

Oddelek: Programiranje
131374 (1114) Isotropic

Več podobnih tem