Kako lahko v Pythonu s funkcijo range()
ustvarite naslednji seznam?
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
uporabite funkcijo reversed()
:
reversed(range(10))
To je veliko bolj smiselno.
Posodobitev:
Če želite, da je to seznam (kot je poudaril btk):
list(reversed(range(10)))
Posodobitev:
Če želite za dosego enakega rezultata uporabiti samo range
, lahko uporabite vse njegove parametre. range(start, stop, step)
Na primer, če želite ustvariti seznam [5,4,3,2,1,0]
, lahko uporabite naslednje:
range(5, -1, -1)
To je morda manj intuitivno, vendar je, kot je omenjeno v komentarjih, to učinkovitejše in pravilno uporablja obseg za obrnjen seznam.
Uporabite vgrajeno funkcijo 'range'. Podpis je range(start, stop, step)
. To ustvari zaporedje, ki daje števila, začenši z začetkom
in končal, če je bil dosežen stop
, brez stopa
.
>>> range(9,-1,-1)
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
>>> range(-2, 6, 2)
[-2, 0, 2, 4]
V Pythonu 3 to ustvari objekt range
, ki ni seznam, ki deluje podobno kot seznam samo za branje (vendar porabi veliko manj pomnilnika, zlasti pri velikih razponih).