de-vraag
  • Otázky
  • Značky
  • Používatelia
Oznámenia
Odmeny
Registrácia
Po registrácii budete informovaní o odpovediach a komentároch na vaše otázky.
Prihlásiť sa
Ak už máte konto, prihláste sa a skontrolujte nové oznámenia.
Za pridané otázky, odpovede a komentáre budú udelené odmeny.
Viac na
Zdroj
Upraviť
Joan Venge
Joan Venge
Question

Prístup k indexu v cykloch 'for'?

Ako môžem pristupovať k indexu v cykle for, ako je nasledujúci?

ints = [8, 23, 45, 12, 78]
for i in ints:
    print('item #{} = {}'.format(???, i))

Chcem získať tento výstup:

Jazyk: žiadny -->

item #1 = 8
item #2 = 23
item #3 = 45
item #4 = 12
item #5 = 78

Keď ho prechádzam pomocou cyklu for, ako získam prístup k indexu cyklu, v tomto prípade od 1 do 5?

3289 2009-02-06T22:47:54+00:00 3
Aaron Hall
Aaron Hall
Edited question 20 september 2019 в 12:19
Programovanie
python
list
loops
Popular videos
Učitel se porval se žákem kvůli reproduktoru. Dal mu pár pohlavků a dokonce ho i nakopl
Učitel se porval se žákem kvůli reproduktoru. Dal mu pár pohlavků a dokonce ho i nakopl
pred 4 mesiacmi
Funkce INDEX a POZVYHLEDAT - částečná shoda| Proč? Jak? Výhody, nevýhody | Excel 365 Tutorial
Funkce INDEX a POZVYHLEDAT - částečná shoda| Proč? Jak? Výhody, nevýhody | Excel 365 Tutorial
pred rokom
VBA - 05 Cyklus For
VBA - 05 Cyklus For
pred 5 rokmi
Teória cyklov na Bitcoinovom grafe – Ako úspešne obchodovať kryptomeny a vychytať dno!
Teória cyklov na Bitcoinovom grafe – Ako úspešne obchodovať kryptomeny a vychytať dno!
pred rokom
Ako úspešne obchodovať kryptomeny - Metoda za použitia cyklov a trendu
Ako úspešne obchodovať kryptomeny - Metoda za použitia cyklov a trendu
pred 2 rokmi
💣 455☞Vypožičaný meč ║CodeCombat Python║ Programovanie s Yetim
💣 455☞Vypožičaný meč ║CodeCombat Python║ Programovanie s Yetim
pred 5 rokmi
Ako využiť cyklo veci pri iných športoch
Ako využiť cyklo veci pri iných športoch
pred rokom
Hospodářský cyklus | EDULAM
Hospodářský cyklus | EDULAM
pred 2 rokmi
AKCIOVÁ BUBLINA 2022 JE PŘÍPRAVENA NA SPLASKNUTÍ (CO PRÁVĚ DĚLÁM)
AKCIOVÁ BUBLINA 2022 JE PŘÍPRAVENA NA SPLASKNUTÍ (CO PRÁVĚ DĚLÁM)
pred 4 mesiacmi
Lepší než SVYHLEDAT? Funkce INDEX a POZVYHLEDAT. Nejlepší vyhledávací kombinace? Excel 365 Tutorial
Lepší než SVYHLEDAT? Funkce INDEX a POZVYHLEDAT. Nejlepší vyhledávací kombinace? Excel 365 Tutorial
pred rokom
💣 386☞Očumovači ║CodeCombat Python║ Programovanie s Yetim
💣 386☞Očumovači ║CodeCombat Python║ Programovanie s Yetim
pred 5 rokmi
Warren Buffett: TOP 7 INVESTIČNÍCH PRINCIPŮ JAK ZBOHATNOUT V ROCE 2022
Warren Buffett: TOP 7 INVESTIČNÍCH PRINCIPŮ JAK ZBOHATNOUT V ROCE 2022
pred 5 mesiacmi
💣 265☞Stratený Viking ║CodeCombat Python║ Programovanie s Yetim
💣 265☞Stratený Viking ║CodeCombat Python║ Programovanie s Yetim
pred 5 rokmi
💣 376☞ Koordinovaná obrana║CodeCombat Python║ Programovanie s Yetim
💣 376☞ Koordinovaná obrana║CodeCombat Python║ Programovanie s Yetim
pred 5 rokmi
7 - Pole
7 - Pole
pred rokom
« Predchádzajúci
Ďalšie »
This question has 1 odpoveď in English, to read them log in to your account.
Solution / Answer
Mike Hordecki
Mike Hordecki
6 február 2009 в 10:52
2009-02-06T22:52:36+00:00
Viac na
Zdroj
Upraviť
#8805292

Použitie dodatočnej stavovej premennej, napríklad indexovej premennej (ktorú by ste bežne použili v jazykoch ako C alebo PHP), sa považuje za nepythonické.

Lepšou možnosťou je použiť vstavanú funkciu enumerate(), ktorá je k dispozícii v Pythone 2 aj 3:

for idx, val in enumerate(ints):
    print(idx, val)

Viac informácií nájdete v PEP 279.

Peter Mortensen
Peter Mortensen
Edited answer 17 september 2016 в 10:13
Built-in Functions — Python 3.10.4 documentation
docs.python.org
5623
0
David Hanak
David Hanak
6 február 2009 в 10:49
2009-02-06T22:49:23+00:00
Viac na
Zdroj
Upraviť
#8805290
for i in range(len(ints)):
   print i, ints[i]
87
0
Charlie Martin
Charlie Martin
6 február 2009 в 10:52
2009-02-06T22:52:06+00:00
Viac na
Zdroj
Upraviť
#8805291

Starým spôsobom:

for ix in range(len(ints)):
    print ints[ix]

Porozumenie zoznamu:

[ (ix, ints[ix]) for ix in range(len(ints))]

>>> ints
[1, 2, 3, 4, 5]
>>> for ix in range(len(ints)): print ints[ix]
... 
1
2
3
4
5
>>> [ (ix, ints[ix]) for ix in range(len(ints))]
[(0, 1), (1, 2), (2, 3), (3, 4), (4, 5)]
>>> lc = [ (ix, ints[ix]) for ix in range(len(ints))]
>>> for tup in lc:
...     print tup
... 
(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 5)
>>> 
Charlie Martin
Charlie Martin
Edited answer 6 február 2009 в 10:57
25
0
Pridať otázku
Kategórie
Všetky
Technológia
Kultúra / Rekreácia
Život / Umenie
Veda
Profesionálne
Obchod
Používatelia
Všetky
New
Popular
1
mohidil qodirova
Registered pred 4 hodinami
2
Jasur Fozilov
Registered pred 18 hodinami
3
Zuxriddin Muydinov
Registered pred dňom
4
Денис Анненский
Registered pred 3 dňami
5
365
Registered pred týždňom
CS
DA
DE
EL
ES
ET
FI
FR
ID
IT
JA
KO
LV
NL
PT
RU
SK
TR
ZH
© de-vraag 2022
Zdroj
stackoverflow.com
na základe licencie cc by-sa 3.0 s uvedením autora