¿Por qué funciona esto en el shell IDLE de Python pero no cuando lo ejecuto como un script de Python desde el símbolo del sistema?

Esto funciona en el shell de Python 3.3.2.

Dentro del Python 3.3.2 Shell
>>> import datetime
>>> print(datetime.datetime.utcnow())
2013-07-09 19:40:32.532341

¡Eso es genial! Luego escribí un simple archivo de texto llamado "datetime.py"

Dentro de Datetime.py
#Date time
import datetime
print(datetime.datetime.utcnow())
#Prints GMT, which is named Universal Coordinated Time
# Which is UTC because in French it's something like
# Universahl Tyme Coordinatay
#Outputs something like 2013-07-09 15:15:19.695531
Probando que el archivo existe
C:\Python33\myscripts>ls
__pycache__  ex1.out  ex2.out  ex3.py    helloworld.py              read1.py
datetime.py  ex1.py   ex2.py   first.py  pythonintoimportexport.py  test.py

Aquí es donde se pone misterioso!

C:\Python33\myscripts>python datetime.py
Traceback (most recent call last):
  File "datetime.py", line 2, in <module>
    import datetime
  File "C:\Python33\myscripts\datetime.py", line 3, in <module>
    print(datetime.datetime.utcnow())
AttributeError: 'module' object has no attribute 'utcnow'
Pregunta

¿Por qué funciona el mismo código en el Shell de Python, pero no cuando se ejecuta como un script?

Respuestas a la pregunta(4)

Su respuesta a la pregunta