más allá del error de paquete de nivel superior en importación relativa

Parece que ya hay algunas preguntas sobre la importación relativa en Python 3, pero después de analizar muchas de ellas, todavía no encontré la respuesta a mi problema. Así que aquí está la cuestión.

Tengo un paquete que se muestra a continuación

package/
   __init__.py
   A/
      __init__.py
      foo.py
   test_A/
      __init__.py
      test.py

y tengo una sola línea en test.py:

from ..A import foo

ahora estoy en la carpeta depackagey corro

python -m test_A.test

Recibí un mensaje

"ValueError: attempted relative import beyond top-level package"

pero si estoy en la carpeta principal depackage, por ejemplo, ejecuto:

cd ..
python -m package.test_A.test

todo esta bien.

Ahora mi pregunta es: cuando estoy en la carpeta depackage, y ejecuto el módulo dentro del subpaquete test_A comotest_A.test, según mi entendimiento,..A sube solo un nivel, que todavía está dentro delpackage carpeta, por qué da mensaje diciendobeyond top-level package. ¿Cuál es exactamente la razón que causa este mensaje de error?

Respuestas a la pregunta(8)

Su respuesta a la pregunta