关于Python的Type,Module,Class

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.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一个模块的时候会去执行此模块的文件中的程序?
全中!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值