如果Python中的约定是大写类,那么为什么list()不是大写的呢?这不是一个班级吗?

Leo*_*rdo 18 python coding-style naming-conventions

通常当我看到类定义时class Foo:,我总是看到它们以大写字母开头.

但是,不是列表[]或字典{}或其他内置类型,类也是?就此而言,所有输入Python IDLE的内容都是一个类,对吧,它是一个自动用紫色进行颜色编码的关键字(使用Window的二进制分配).

spam = list()

spam 现在是一个例子 list()

所以我的问题是,为什么Python允许我们首先做一些事情,比如list = list()当没有人这样做时.但是,为什么不呢list = List()

该语言的开发人员是否决定不使用任何类型的约定,而大多数Python程序员都是这样命名他们的类?

Bre*_*arn 26

是的,大写初始类是公约,如PEP 8中所述.

你是对的,很多内置类型都不遵循这个约定.当用户定义的类和内置类型之间存在更大的差异时,这些是Python早期阶段的延续.但是,用C编写的内置或扩展类型似乎更可能具有小写名称(例如numpy.array,不是numpy.Array).

尽管如此,惯例是在Python代码中为您自己的类使用大写首字母.