python 核心对象类型要点

1、对象根据分类来共享操作;例如,字符串、列表和元组都共享诸如合并、长度和索引等操作。

2、只有可变对象(列表、字典和集合)可以原处修改;我们不能原处修改数字、字符串或元组。

3、文件导出唯一的方法,因此可变性并不真的适用于它们------当处理文件的时候,它们的状态可能会修改,但是,这与Python的核心类型可变性限制不完全相同。

4、表1中的“数字”包含的所有数字类型:整数( 与Python 2.6的整数有区别),浮点数、复数、小数和分数。

5、表1中的字符串包括str,以及Python 3.0中的bytes 和Python 2.6中的unicode Python 3.0中的bytearray字符串类型是可变的。

6集合类似于一个无值的字典的键,但是,它们不能映射为值,并且没有顺序;因此,集合不是一个映射类型或者一个序列类型,frozenset是集合的一个不可变的版本。

7除了类型分类操作,表1中的Python 2.6和Python 3.0的所有类型都有可调用的方法、这些方法通常特定于它们的类型。


表1:对象分类

对象灵活性

。列表、字典和元组可以包含任何种类的对象

。列表、字典和元组可以任意嵌套

。列表和字典可以动态地扩大和缩小


引用VS拷贝

。没有限制条件的分片表达式(L[:])能够复制序列

。字典copy方法(X.copy())能够复制字典

。有些内置函数(例如,list)能够生成拷贝(list(L))

。copy标准库模块能够生成完整拷贝

比较、相等性和真值

* “==” 操作符测试值的相等性

* “is” 表达式测试对象的一致性

*  “>,<” 比较大小

* 数字通过相对大小进行比较

* 字符串是按照字典顺序,一个字符接一个字符地进行比较("abc"< "ac")

* 列表和元组从左到右对每部分的内容进行比较

* 字典通过排序之后的 ( 键、值)列表进行比较。字典的相对大小比较在Python 3.0中不支持,但是,它们在Python 2.6及更早的版本有效,就像是比较排序的(键、值)列表一样

* 数字混合类型比较(例如,1< 'spam')在Python 3.0中是错误的。Python 2.6中允许这样比较,但是使用一种固定但任意的排序规则。通过代理,这也适用于排序,它在内部使用比较:非数字的混合类型集合不能在Python 3.0中排序


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值