type?
注意,Python里面任何东西都是对象,但并不是任何东西都是类!
看下面一段程序及说明(来自Dive into python):
注意,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.ModuleType True .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一个模块的时候会去执行此模块的文件中的程序? 全中!