关于Python的Type,Module,Class

来源:互联网 发布:葫芦娃摇钱树元宝算法 编辑:程序博客网 时间:2024/04/28 16:25
type?
注意,Python里面任何东西都是对象,但并不是任何东西都是类!
看下面一段程序及说明(来自Dive into python):

例 4.5. type 介绍

>>> type(1)           .1<type 'int'>>>> li = []>>> type(li)          .2<type 'list'>>>> import odbchelper>>> type(odbchelper)  .3<type 'module'>>>> import types      .4>>> type(odbchelper) == types.ModuleTypeTrue.1 type 可以接收任何东西作为参数 -- 我的意思是任何东西 -- 并返回它的数据类型。整型、字符串、列表、字典、元组、函数、类、模块、甚至类型对象都可以作为参数被 type 函数接受。.2 type 可以接收变量作为参数,并返回它的数据类型。.3 type 还可以作用于模块。.4 你可以使用 types 模块中的常量来进行对象类型的比较。这就是 info 函数所做的,很快你就会看到。-----------------获得的知识---------------------------------------看到没有?第1点所说的,分明是说明了Python的元素(或者说是数据类型)有:       整型、字符串、列表、字典、元组、函数、类、模块、类型对象等.想起一句话,Python里面任何东西都是对象.起初我是这样以为的:那是不是所有东西都是类呢?我错了.类在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一个模块的时候会去执行此模块的文件中的程序?全中!