Dlaczego to działa w powłoce Python IDLE, ale nie wtedy, gdy uruchamiam ją jako skrypt Pythona z wiersza poleceń?
Działa to w powłoce Python 3.3.2
Wewnątrz Pythona 3.3.2 Powłoka>>> import datetime
>>> print(datetime.datetime.utcnow())
2013-07-09 19:40:32.532341
To wspaniale! Następnie napisałem prosty plik tekstowy o nazwie „datetime.py”
Inside 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
Udowodnienie, że plik istniejeC:\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
Oto, gdzie robi się tajemniczo!
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'
PytanieDlaczego ten sam kod działa w powłoce Pythona, ale nie działa jako skrypt?