您的麻烦是,您有一些代码希望datetime
对datetime
模块 进行引用,而其他代码希望datetime
对类进行引用datetime
。 显然,不能两者兼有。
当您这样做时:
from datetime import datetime
import datetime
您首先要设置datetime
为对该类的引用,然后立即将其设置为对模块的引用。当您以另一种方式执行此操作时,它是同一件事,但是最终它是对该类的引用。
您需要重命名这些引用之一。例如:
import datetime as dt
from datetime import datetime
然后,您可以将引用datetime.xxxx
模块的形式的引用更改为dt.xxxx
。
否则,只需import datetime
更改所有引用即可使用模块名称。换句话说,如果有话说,datetime(...)
您需要将其更改为datetime.datetime
。
不幸的是,Python在它的库中有很多类似的东西。如果他们遵循PEP 8中自己的命名准则,则将为datetime
该类命名,Datetime
并且使用它们既datetime
表示模块又Datetime
表示类都没有问题。