La importación relativa de Python provoca una excepción SyntaxError

De acuerdo con ladocumentos de python, se ha admitido la importación relativa y las referencias dentro del paquete desde Python 2.5 Actualmente estoy ejecutando Python 2.7.3. Por lo tanto, traté de implementar esto en mi propio paquete para usarlo para una importación más simple. Me sorprendió descubrir que me lanzó una excepción de SyntaxError, y esperaba que alguien pudiera ayudar a abrir el camino hacia la causa.

Configuré un directorio de prueba para probar:

tester
├── __init__.py
├── first_level.py
└── sub
    ├── __init__.py
    └── second_level.py

Ambos módulos __init__.py están vacíos. Los otros módulos son:

# first_level.py
print "This is the first level of the package"
# sub/second_level.py
import ..first_level
print "This is the second level"

Cuando intento importar el módulo second_level, aparece el siguiente error:

Python 2.7.3 (default, Aug  1 2012, 14:42:42) 
[GCC 4.2.1 Compatible Apple Clang 4.0 ((tags/Apple/clang-421.0.57))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Welcome!
>>> import tester
>>> import tester.sub.second_level
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "tester/sub/second_level.py", line 1
    import ..first_level
           ^
SyntaxError: invalid syntax

Esperaba que las dos líneas se imprimieran una después de la otra, pero en su lugar genera una excepción. Entonces, ¿estoy haciendo la importación mal? ¿Tienes alguna otra idea?

Respuestas a la pregunta(2)

Su respuesta a la pregunta