为什么python中的某些包或函数的首字母大写,而有些则不是?

为什么python中的某些包或函数的首字母大写,而有些则不是?,python,Python,例如: from urllib.request import urlopen, Request 有关于首字母大写的规则吗?python中的最佳实践是在函数名中使用小写字母,但是,在处理类时,我们将首字母大写。大多数答案都是大写的-基本上,类是用CamelCase拼写的,其他所有字母都用小写字母加下划线 但请注意(出于各种原因),Python本身并不总是遵守此约定(内置和stdlib): 相当多的类都以较低的形式命名,特别是datetime包中的datetime、date、time和timed

例如:

from urllib.request import urlopen, Request

有关于首字母大写的规则吗?

python中的最佳实践是在函数名中使用小写字母,但是,在处理类时,我们将首字母大写。

大多数答案都是大写的-基本上,类是用CamelCase拼写的,其他所有字母都用小写字母加下划线

但请注意(出于各种原因),Python本身并不总是遵守此约定(内置和stdlib):

  • 相当多的类都以较低的形式命名,特别是
    datetime
    包中的
    datetime
    date
    time
    timedelta
    中的所有内置类型(
    type
    property
    int
    float
    str
    列表
    元组
    dict
    设置
    对象
    等)

  • logging
    包对大多数函数和方法使用
    mixedCase
    (即
    logging.getLogger()
    应该是
    logging.get\logger()
    等)


对于内置类型,至少有一个历史原因:大多数名称最初绑定到函数,而不是类(我指的是Python1.5.x或更老的版本)值得一提的是,它们中的相当一部分实际上仍然被记录为函数,但它们不是…

亲密选民:是否有关于大写的规则不是意见问题。
Request
是一个类,
urlopen
是一个函数。为了扩展@HåkenLid comment,类通常被命名为using PascalCase(或CamelCase)约定,而函数都是小写,用下划线分隔。可能重复