also nochmal,
das was ihr da hinschreibt, funktioniert nicht. ganz so dämlich bin ich nun nicht. aus dem grund schreib ich auch in dieses forum. habt ihr denn schon mal mit der flickr api gearbeitet, dann probiert es aus und schreibt nicht irgendwelche array kommandos nieder.
man man man und das zum montag
Variablen nummerieren
- Du stellst eine Frage, von der hier mehrere meinen, dass sie nicht zielführend ist.
- Du gehst nicht auf Rückfragen ein.
- Du stellst anschließend die Frage, wie man auf das zweite Element einer Liste zugreifen kann. Dieses ist Basiswissen und die erste Frage läßt ebenfalls vermuten, dass Basiswissen fehlt, weshalb wir Dich auf das Tutorial verwiesen haben. Das ist keine Arroganz von unserer Seite, sondern soll erreichen, das wir auf einem Niveau weitermachen können, auf dem Fragen sinnvoller gestellt werden können.
- Jetzt schreibst Du in einem Atemzug "funktioniert nicht" und wirst unfreundlich.
So kommen wir nicht weiter.
Also: Variablen (die es im engeren Sinne in Python nicht gibt) nummeriert man höchstens in der Ausgabe - falls das sinnvoll ist. Man kann Werte aber in einer Liste speichern. Hierbei haben sie eine bestimmte Reihenfolge - das *könnte* eine Lösung für Dein Problem sein, von dem wir nicht wissen was es ist.
Wie wäre es Du tutst Dir wirklich einmal das Tutorial an? (Das geht fix.) Und formulierst dann dasjenige, was Du *tatsächlich* erreichen willst? (Das wird wohl kaum das Umbenennen von "Variablen" sein.)
Gruß,
Christian
- Du gehst nicht auf Rückfragen ein.
- Du stellst anschließend die Frage, wie man auf das zweite Element einer Liste zugreifen kann. Dieses ist Basiswissen und die erste Frage läßt ebenfalls vermuten, dass Basiswissen fehlt, weshalb wir Dich auf das Tutorial verwiesen haben. Das ist keine Arroganz von unserer Seite, sondern soll erreichen, das wir auf einem Niveau weitermachen können, auf dem Fragen sinnvoller gestellt werden können.
- Jetzt schreibst Du in einem Atemzug "funktioniert nicht" und wirst unfreundlich.
So kommen wir nicht weiter.
Also: Variablen (die es im engeren Sinne in Python nicht gibt) nummeriert man höchstens in der Ausgabe - falls das sinnvoll ist. Man kann Werte aber in einer Liste speichern. Hierbei haben sie eine bestimmte Reihenfolge - das *könnte* eine Lösung für Dein Problem sein, von dem wir nicht wissen was es ist.
Wie wäre es Du tutst Dir wirklich einmal das Tutorial an? (Das geht fix.) Und formulierst dann dasjenige, was Du *tatsächlich* erreichen willst? (Das wird wohl kaum das Umbenennen von "Variablen" sein.)
Gruß,
Christian
hm, ich bin jetzt einfach mal davon ausgegangen, dass places_find eine Liste zurück gibt.
Wenn dem nicht so ist: wie sieht denn der Rückgabewert aus?
Wie gesagt, am einfachsten ist es wohl, wenn du genau beschriebst:
a) was du hast, und
b) wo du hin willst
Wenn dem nicht so ist: wie sieht denn der Rückgabewert aus?
Wie gesagt, am einfachsten ist es wohl, wenn du genau beschriebst:
a) was du hast, und
b) wo du hin willst
vielleicht kommen wir so weiter.
wenn meine formulierung von vorhin dir ein wenig zu flappsig vorkam, dann entschuldige ich mich dafür.
ziel:
ich möchte mit der abfrage nach der region die place_id erhalten
nun gibt mir das ergebnis allerdings 5 verschiedene id's zurück.
aus diesen 5 id's möchte ich mir nun die passende aussuchen und diese über die eingabe 1,2,3, oder oder oder weiterverarbeiten.
also in etwa so --> ausgabe:
über die 2 wird nun die place_id kPLKJXSbBZ1rWfnQ in den weiteren code eingeben.
Natürlich könnte man auch einfach die place_id kopieren, aber ich wöllte es gern bedienungsfreundlicher.
Hoffe das ist nun zu verstehen.
Ciao
wenn meine formulierung von vorhin dir ein wenig zu flappsig vorkam, dann entschuldige ich mich dafür.
ziel:
ich möchte mit der abfrage nach der region die place_id erhalten
Code: Alles auswählen
import flickrapi
api_key = '......'
eingabe=raw_input("Bitte Stadtnamen eingeben")
place = eingabe
flickr = flickrapi.FlickrAPI(api_key, cache=True)
photos = flickr.places_find(query=place)
for n, place in enumerate(photos[0]):
sugar=place.attrib['place_id']
print sugar
aus diesen 5 id's möchte ich mir nun die passende aussuchen und diese über die eingabe 1,2,3, oder oder oder weiterverarbeiten.
also in etwa so --> ausgabe:
Code: Alles auswählen
0: IkEb0MefBJs0tq0
1: FGtXm.2bAZ2aOwdjPQ
2: kPLKJXSbBZ1rWfnQ
3: 7rtlMS2aBpp7oog
4: ElaAIKmbBZ26Vl6a
Code: Alles auswählen
eingabe=raw_input("Bitte genauer werden:")
2
Natürlich könnte man auch einfach die place_id kopieren, aber ich wöllte es gern bedienungsfreundlicher.
Hoffe das ist nun zu verstehen.
Ciao
Zuletzt geändert von makuee am Montag 15. März 2010, 13:51, insgesamt 1-mal geändert.
- 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
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Suchst Du etwamakuee 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
Code: Alles auswählen
photos[0][2]
MfG
HWK
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
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.
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.
Wieso das denn nicht? In Deinem Beispiel sind die müsste "items" == "photos[0]" sein.makuee hat geschrieben:danke lunar, sieht zwar super aus, funktioniert aber nicht, und zwar aus dem grund, dass "items" bei mir nicht festgelegt ist.
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:über die api wird "items" immer ein neuer wert zugeordnet. für "items", wäre bei mir "sugar", ist kein array definiert.
So schnell? Schade.makuee hat geschrieben:ich gebs damit auf und werd es doch ein wenig umständlicher machen.
hey cm,
wenn photos meine liste wäre, dann müsste ich diese mir auch ausgeben lassen können.
ich erhalte dabei aber lediglich
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>
@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.
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.