ylab color categoryorder python reduce

python - color - NameError: el nombre global ''reducir'' no está definido



plotly layout (2)

Soy nuevo en Python. ¿Podría por favor decirme qué está mal con el siguiente código? Cuando lo ejecuté, recibí un mensaje de error de "NameError: el nombre global ''reducir'' no está definido". Le pregunté a Goolge pero es inútil. :(

def main(): def add(x,y): return x+y reduce(add, range(1, 11)) if __name__==''__main__'': main()


Voy a adivinar que:

  1. Estás usando Python 3, y
  2. Estás siguiendo un tutorial diseñado para Python 2.

La función de reduce , ya que no se usa comúnmente, se eliminó de las funciones integradas en Python 3. Todavía está disponible en el módulo functools , por lo que puede hacer:

import functools def main(): def add(x,y): return x+y functools.reduce(add, range(1, 11))


también

# Import reduce from functools from functools import reduce

Le permite utilizar reduce como si fuera una función incorporada.

def main(): def add(x,y): return x+y reduce(add, range(1, 11))