UnboundLocalError: lokale Variable 'url' referenziert vor der Zuweisung

Ich versuche, diesen Code zu bekommen, aber es kommt immer mit dem Fehler im Titel. Ich verstehe es nicht Die Funktion "url" ist vor der Funktion "get_media" gesetzt und das gleiche Funktionsaufruf funktioniert mit anderen Funktionen, die ich eingestellt habe, aber es steht anders. Ich habe die Antworten der Frage beantwortet, aber ich kann sie nicht verstehen, denn die Antworten sind um ihren komplizierten Code herum entworfen, und sie bieten keine richtige Erklärung, wie es funktioniert.

def url(path): if path.find("?") != -1: pre = "&" else: pre = "?" return protocol +"://" +host +base_path +path +pre +"access_token=" +access_token def get_media(insta_id, max_id=None): insta_id = str(insta_id) path = url("/users/%s/media/recent/") # ERROR COMES UP HERE if max_id is not None: path = path +"&max_id=%s" % max_id url = urllib.request.urlopen(path) url = url.read().decode("utf-8") url = json.loads(url) return url 

Jede Hilfe geschätzt. Sag mir, wenn du mehr Code brauchst, um mit zu arbeiten.

B

One Solution collect form web for “UnboundLocalError: lokale Variable 'url' referenziert vor der Zuweisung”

Sie ordnen einer lokalen Variablen namens "url" später in Ihrer Funktion zu. Aus diesem Grund behandelt Python jeden Verweis auf "url" innerhalb dieser Funktion als lokal. Aber natürlich hast du diese lokale Variable noch nicht definiert, also der Fehler.

Verwenden Sie einen anderen Namen für die lokale "url" Variable. (Es ist sowieso nie eine URL, also solltest du definitiv einen besseren Namen verwenden.)

  • Python3-Fehler: initial_value muss str oder None sein
  • Sind classobjects singletons?
  • Wie man Bytes zu einer Datei in Python 3 schreibt, ohne die Codierung zu kennen?
  • Probleme mit dem Schreiben von Chinesisch in die CSV-Datei in Python
  • Python identity Wörterbuch [duplizieren]
  • Wo kann man einen Log-Dateinamen in Python speichern?
  • Wie kann ich eine statische Methode als Standardparameter für das Strategieentwurfsmuster verwenden?
  • Bearbeiten und erstellen Sie HTML-Datei mit Python
  • Wie benutzt man Pip mit Python 3.4 auf Fenstern?
  • Tiefe ersten Suchalgorithmus in Python
  • Python 3: Entmystifizieren von Codierungs- und Decodierungsmethoden
  • Python ist die beste Programmiersprache der Welt.