我经常对我是否从datetime
导入datetime
,或者我是否刚导入datetime
感到困惑。如果我在某些代码中看到正在使用datetime
,我无法快速判断它是模块日期时间还是类日期时间。很烦人。我该怎么办?
此外,PEP 8 clearly states:"班级名称通常应使用CapWords惯例。"
如果datetime
模块中的类名为DateTime
,Date
和Time
,则会有所帮助。
由于这个问题被搁置了,因为"不清楚你要问的是什么,我已经决定编辑和写更多。说实话,我也不确定我要问的是什么 - 我只是发现我一再被这个问题绊倒并希望得到反馈。我想我确实得到了一些非常有用的建议,特别是来自tdelaney:
我个人
import datetime as dt
并使用dt.datetime
等...因为 我希望保留原始的类名,同时尽量减少混淆 使用模块名称。
答案 0 :(得分:3)
拥有更一致的命名可能会更好。但是标准的Python库以及经典的Python和#34;内置的"类型既不符合PEP-8,也不符合任何严格的一致性模型。所有标准类型(例如int
,float
,str
,list
和dict
)都是小写的。 dict
的某些扩展名为CapWorded,如OrderedDict
。但它的伴侣defaultdict
不是。有许多数据类型与其模块名称相同,例如array.array
和datetime.datetime
。 Python 3的重大改写移动了一些模块,但它没有在很大程度上同化或重新组织类名。
所以......只要学会忍受它。这是一个历史事实,不太可能很快改变。