[ Foro de Python ]

cx_Oracle caso raro

02-Feb-2023 20:59
Miguel De Belliz
1 Respuestas

Estoy iniciándome en Python y probando conectarme a Oracle.
En realidad lo único que estoy haciendo es probar una línea para ver si funciona el cx_Oracle:

import cx_Oracle

Bueno, el caso es que cuando corro el programa me pide que ingrese datos... Copio el resultado de la corrida a ver si alguien me puede dar una mano.
Abrazos desde Argentina.

C:\PYTHON_CODE>python oracle2.py
Ingrese edad: 20
20
21
20.0
Please enter a number: 30
Traceback (most recent call last):
 File "C:\PYTHON_CODE\oracle2.py", line 1, in <module>
   import cx_Oracle
 File "C:\Users\DEBEMIG\AppData\Local\Programs\Python\Python311\Lib\decimal.py", line 3, in <module>
   from _decimal import *
AttributeError: module 'numbers' has no attribute 'Number'


16-Mar-2023 21:37
Invitado (Alejandro Andrade)

El error que estás viendo es causado por una colisión entre los módulos 'decimal' y 'numbers'. Parece que has creado un archivo llamado 'decimal.py' en algún lugar de tu sistema que está siendo importado en lugar del módulo 'decimal' de la biblioteca estándar de Python.

Para solucionar este problema, necesitas encontrar el archivo 'decimal.py' y cambiarle el nombre o eliminarlo. Si no puedes encontrar el archivo, puedes usar la función 'print()' para imprimir 'decimal.__file__' y 'numbers.__file__' para ver las ubicaciones de los archivos de los módulos.

Es importante que renombres o elimines el archivo 'decimal.py', ya que puede causar problemas en otros programas que utilicen los módulos 'decimal' y 'numbers'.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)