Jef*_*eff 12 python python-3.x
我刚刚开始自学如何编码.我目前正在阅读Think Python 2 for python 3,当它教授该type()函数时,它给出了type(2)输出的示例<class 'int'>.然后它声明"在类别意义上使用'类'一词;类型是一类价值."
困惑我的部分是type()函数输出类而不是类型.另外,我不确定类型和类之间的区别; 是字符串,浮点和"值"类型的整数类,还是它们是相同的东西?
我已经看了这个,但是找不到我的具体问题的答案,或者我找不到简单的理解.
Mar*_*ers 16
曾几何时,Python有类型和类.类型是C中定义的内置对象; 类是你在使用class语句时构建的.这两个人的名字不同,因为你不能混合这些; 类无法扩展类型.
这种差异是人为的,是语言实现的限制.从Python 2.2开始,Python的开发人员慢慢地朝着统一这两个概念的方向发展,差别在于Python 3中的内容.内置类型现在也被标记为类,您可以随意扩展它们.
你的书试图解释Python中不存在的差异.即使在Python 2中,差异仅存在于名称中,因为type(2)显示"类型"一词仍然在那里使用:
>>> type(2)
<type 'int'>
Run Code Online (Sandbox Code Playgroud)
但你可以int像任何其他类一样继承子类.
(Python 2仍然具有旧式类,那些不继承的类object;这些是统一之前旧系统的残余.)
python的层次结构是类型(元类)->类->实例。将该功能type()视为向上一级。
如果您像这样type()在int(任何整数)的实例上使用该函数:type(123)您将收到实例的类,在这种情况下是int. 如果您将type()在 class 上使用int,您将收到type type哪个是 int 的元类。
请记住,元类是 Python 的高级技术细节,您无需一开始就了解它们。
| 归档时间: |
|
| 查看次数: |
6940 次 |
| 最近记录: |