Variablen nummerieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
makuee
User
Beiträge: 11
Registriert: Montag 15. März 2010, 11:20

hey mkesper,

darum gehts nicht :)
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

makuee, also willst du eben nicht den String veraendern, sondern willst nur die Nummer mit ausgeben dass der Nutzer sie sehen kann. Das macht doch die von CM schon erwaehnte Loesung mit enumerate!
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

makuee hat geschrieben:hey robert,

anscheinend bin ich noch nicht ganz aus dem wochenende zurück, aber wie kann ich denn auf einen bestimmten Eintrag aus der Liste photos zugreifen. z.b. den 2ten

danke
Suchst Du etwa

Code: Alles auswählen

photos[0][2]
?
MfG
HWK
lunar

Code: Alles auswählen

>>> items = ['spam', 'eggs', 'fluffy rabbit']
>>> for i, item in enumerate(items, start=1):
   ...:     print('{0:>2}: {1}'.format(i, item))
   ...: 
 1: spam
 2: eggs
 3: fluffy rabbit
>>> while True:
   ...:     response = raw_input('Enter number: ')
   ...:     if response.isdigit() and 1 < int(response) <= len(items):
   ...:         index = int(response)
   ...:         break
   ...: 
Enter number: a
Enter number: 10
Enter number: 2
>>> print('Your choice: {0}'.format(items[index-1]))
Your choice: eggs
makuee
User
Beiträge: 11
Registriert: Montag 15. März 2010, 11:20

hm....

danke lunar, sieht zwar super aus, funktioniert aber nicht, und zwar aus dem grund, dass "items" bei mir nicht festgelegt ist. über die api wird "items" immer ein neuer wert zugeordnet. für "items", wäre bei mir "sugar", ist kein array definiert.

ich gebs damit auf und werd es doch ein wenig umständlicher machen.
dank trotzdem nochmal an alle die's versucht haben.
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

makuee hat geschrieben:danke lunar, sieht zwar super aus, funktioniert aber nicht, und zwar aus dem grund, dass "items" bei mir nicht festgelegt ist.
Wieso das denn nicht? In Deinem Beispiel sind die müsste "items" == "photos[0]" sein.
makuee hat geschrieben:über die api wird "items" immer ein neuer wert zugeordnet. für "items", wäre bei mir "sugar", ist kein array definiert.
Falsch, Dein "sugar" ist doch ein Wert, den Du selber umwandelst. Ob nun lunars oder meine Version (lunars ist allerdings schöner ;-) ) - diesen Schritt hast Du schon gemacht. Du mußt ihn nur auf die Beispiele anwenden.
makuee hat geschrieben:ich gebs damit auf und werd es doch ein wenig umständlicher machen.
So schnell? Schade.
makuee
User
Beiträge: 11
Registriert: Montag 15. März 2010, 11:20

hey cm,

wenn photos meine liste wäre, dann müsste ich diese mir auch ausgeben lassen können.
ich erhalte dabei aber lediglich

Code: Alles auswählen

<Element rsp at 38dbc10>
lunar

@makuee: Es ist völlig irrelevant, dass die Liste „festgelegt“ ist. Mein Quelltext benötigt keine Liste, sondern kommt mit Objekten beliebigen Typs zurecht, solange diese Objekte nur Iteration und Index-Zugriff bieten.

Die Schleife über "photos[0]" in Deinem ursprünglichen Quelltext zeigt, dass das Objekt Iteration anbietet, ansonsten würde die Schleife nicht funktionieren. Wenn Index-Zugriff nicht funktioniert, dann musst Du das Objekt eben vorher in eine Liste verwandeln, was dank der Iteration in jedem Fall funktioniert.

Das ist allerdings nun wieder Grundwissen über Pythons Typsystem, und sollte eigentlich klar sein, wenn man das Tutorial gelesen und verstanden hat.
Antworten