global … no se define python

Necesito leer algunas palabras texto por texto en python, y recibo este error. “NameError: el nombre global ‘wordList’ no está definido.

i=0 with fitxer as f: for line in f: for word in line.split(): wordList[i]=word i+1 return wordList 

Necesitas definir wordList para empezar. Y no puede asignar índices al azar en una lista vacía. Puede “ampliar” fácilmente la lista con nuevos valores.

 worldList = [] with fitxer as f: for line in f: wordList.extend(line.split()) return wordList 

wordList no se wordList una instancia como una lista o no está dentro del scope.

Si wordList es una variable global, el principio de su función necesitará global wordList No es necesario porque el objeto está mutado.

Si la lista solo debe estar dentro del scope de la función, deberá instanciarla como una lista.

 wordList = [] 

Edición: como deceze señaló

Dentro de la función en sí, debería estar agregando a la lista ya que el índice no existe.

 wordList.append(word) 

No ha definido wordList antes de intentar usarlo en su bucle o devolverlo.

Intente agregar wordList = [] debajo de i=0 para declarar wordList como una lista vacía.

Además, debe usar wordList.append(i) para agregar su palabra a esta lista.