为什么Python同时有一个名为datetime的模块和类?

2024-10-03 11:18:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我经常搞不清我是不是从datetime导入了datetime,还是刚刚导入了{}。如果我在一些代码中看到datetime正在使用,我无法快速判断它是模块datetime还是类datetime。真烦人。我能做什么?在

另外,PEP 8 clearly states:“类名通常应该使用CapWords约定。”

如果datetime模块中的类被称为DateTimeDate和{},这会有所帮助。在

由于这个问题被搁置,因为“不清楚你在问什么”,我决定编辑和写更多。老实说,我也不知道我在问什么——我只是发现我一再被这个问题绊倒,想得到反馈。不过,我想我确实得到了一些非常有用的建议,尤其是来自tdelaney:

Personally I import datetime as dt and use dt.datetime, etc... because I want to keep the original class names while minimizing the confusion with the module name.


Tags: 模块the代码编辑datetimedatedt建议
1条回答
网友
1楼 · 发布于 2024-10-03 11:18:37

有更一致的命名可能会更好。但是标准的Python库和传统上认为Python的“内置”类型既不遵循PEP-8,也不遵循任何严格的一致性模型。所有标准类型(例如intfloatstrlist、和{})都是小写。一些dict的扩展名是大写的,比如OrderedDict。{cd8>不是它的同伴。有许多数据类型与其模块的名称相同,例如array.array和{}。python3的主要重写移动了一些模块,但它没有在很大程度上统一或重组类名。在

所以…学会接受它。这是历史事实,不太可能很快改变。在

相关问题 更多 >