fbpx

AttributeError: module ‘collections’ has no attribute ‘Hashable’.

  • AttributeError: module ‘collections’ has no attribute ‘Hashable’.

    Posted by Ricardo Ancelmo Vega Guardado on 25 enero, 2024 en 1:59 pm

    Qué tal profe buenas tardes. Mi error es que en el repositorio de CorpusBot me aparece error de modulo. Aquí comparto captura.

    Intenté la solución de la imagen dos pero igualmente me sigue marcando el error.

    Va gracias.

    • Esta discusión fue modificada 5 meses, 3 semanas por  Angel Sánchez.
    Ricardo Ancelmo Vega Guardado respondido 5 meses, 3 semanas 3 Miembros · 4 Respuestas
  • 4 Respuestas
  • Rod U

    Miembro
    25 enero, 2024 en 2:54 pm

    Hola, Ricardo. Buen día.
    En tu código veo que la línea 3 la tienes comentada, esa podría ser la razón de tu error.
    Si aún sigues teniendo error, veo que utilizas la versión 3.10 de Python, por lo cual es probable que te siga dando error, porque hubo una actualización en el paquete collections de Python, si es así, intenta con esto:

    from collections.abc import Hashable
    

    • Ricardo Ancelmo Vega Guardado

      Miembro
      25 enero, 2024 en 4:36 pm

      Muchas gracias por el dato profe, pero qué cree me sigue apareciendo igual al que le comparto captura. Y también actualicé el sistema.

  • Angel Sánchez

    organizador
    26 enero, 2024 en 12:58 pm

    Cuando utilizas:

    from collections.abc import Hashable

    Lo que estás haciendo es traer del módulo “collections.abc” la clase “Hashable”. Esto es correcto porque desde Python3.3 (Tú tienes la 3.10), Hashable se movió al módulo collections.abc. Pero puede haber otros programas que estén intentado acceder a esa clase con la forma anterior: “collections.Hashable” y no lo encuentran, he ahí el problema de:

    AttributeError: module ‘collections’ has no attribute ‘Hashable’.

    Así que puedes agregar esta línea:

    import collections.abc
    collections.Hashable = collections.abc.Hashable

    Lo que vas a hacer aquí es importar directamente “collections.abc” para luego manualmente pasar “collections.abc.Hashable” a “collections.Hashable” y si algún programa intenta acceder en la forma anterior pueda funcionar.

    Esto debería de solucionar tu problema, me avisas cualquier cosa 😀

    • Ricardo Ancelmo Vega Guardado

      Miembro
      28 enero, 2024 en 1:03 pm

      Buenos días, una disculpa que no había podido responder pero, me funcionó la solución profe, después de la corrección que me compartió… Pude correr mi programa efectivamente. Muchas gracias.🙏

Inicia sesión para responder.

Start of Discussion
0 de 0 respuestas Junio 2018
Ahora