关于Python的Type,Module,Class
Posted on 2007-07-13 by jeff
类在Python中只是一种数据类型.而任何东西都是对象应该是针对Type来说的,对象是Type的实例,而并不限于是类的实例.
要知道Python所支持的Type?那dir一下types就知道:
['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodType', 'ClassType', 'CodeType', 'ComplexType', 'DictProxyType',
'DictType', 'DictionaryType', 'EllipsisType', 'FileType', 'FloatType', 'FrameType', 'FunctionType', 'GeneratorType',
'GetSetDescriptorType', 'InstanceType', 'IntType', 'LambdaType', 'ListType', 'LongType', 'MemberDescriptorType', 'MethodType',
'ModuleType', 'NoneType', 'NotImplementedType', 'ObjectType', 'SliceType', 'StringType', 'StringTypes', 'TracebackType',
'TupleType', 'TypeType', 'UnboundMethodType', 'UnicodeType', 'XRangeType']
这些就是Python的数据实际类型了.嘿.
———————————————————
module?
一个Py文件可以看作是一个模块?一个包可以看作一个模块?当Import一个包的时候,所获得的东西只有init.py里面的东西?
import一个模块的时候会去执行此模块的文件中的程序?
全中!
再引用作者在知乎的评论
Python 的 type 和 object 之间是怎么一种关系?
结论
类(第二列的同学)在Python里面是一个对象(typeobject),对象是可以在运行时动态修改的
先来看看type和object:
object
<type 'object'>
type
<type 'type'>
自己的理解
A产生了B,B强大后也知道A是什么,A和B一样强大
这也出来了元类,第一列产生了元类