鱼C论坛

 找回密码
 立即注册
查看: 1698|回复: 0

[技术交流] 《零基础入门学习python》第十三讲笔记:元组:戴上了枷锁的列表

[复制链接]
发表于 2017-7-18 20:56:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 bozhen 于 2017-7-18 20:58 编辑

元组和列表是近亲关系,在实际使用上是非常相似的。

元组和列表的最大区别是:列表能任意修改其中的元素,任意插入或删除,而元组则不行,一旦定义则不可改变。

  1. >>> tuple1 = (1,2,3,4,5,6,7,8)   # 元组创建用一对小括号
  2. >>> tuple1
  3. (1, 2, 3, 4, 5, 6, 7, 8)
  4. >>> tuple1[2]   #  访问索引值为2的元素
  5. 3
  6. >>> tuple1[5:]   # 切片,从索引值为5开始到最后
  7. (6, 7, 8)
  8. >>> tuple1[:5]   # 切片,从开头到索引值为5(不包含索引值为5的元素)
  9. (1, 2, 3, 4, 5)
  10. >>> tuple2 = tuple1[:]   # 复制切片
  11. >>> tuple2
  12. (1, 2, 3, 4, 5, 6, 7, 8)
  13. >>> tuple1[1] = 3   # 报错,不能修改元组里面元素的值
  14. Traceback (most recent call last):
  15.   File "<pyshell#37>", line 1, in <module>
  16.     tuple1[1] = 3
  17. TypeError: 'tuple' object does not support item assignment
复制代码

  1. >>> temp2 = 2 ,3 ,4  # 以,表示是元组类型
  2. >>> type(temp2)
  3. <class 'tuple'>

  4. >>> temp = []  # 创建空列表
  5. >>> type(temp)
  6. <class 'list'>
  7. >>> temp = ()  #创建空元组
  8. >>> type(temp)
  9. <class 'tuple'>
复制代码

  1. >>> temp = (1,)  # 加逗号,就表示是元组
  2. >>> type(temp)
  3. <class 'tuple'>
  4. >>> temp =(1)  # 没加逗号,就表示是int
  5. >>> type(temp)
  6. <class 'int'>
  7. >>> temp = 1,   # 不加括号,有逗号,依然成立
  8. >>> type(temp)
  9. <class 'tuple'>
复制代码

  1. >>> 8 * (8)  #  (8) 为int8
  2. 64
  3. >>> 8 * (8,)  # (8,) 为touple , *为重复操作符
  4. (8, 8, 8, 8, 8, 8, 8, 8)
复制代码

  1. >>> temp = ('小甲鱼','黑夜','迷途','小布丁')
  2. >>> temp = temp[:2] + ('怡静',) + temp[2:]   # 在黑夜和迷途之间加上怡静,括号和,必须有
  3. >>> temp
  4. ('小甲鱼', '黑夜', '怡静', '迷途', '小布丁')
复制代码


append()     ---> 在最后增加一个元素
extend()      --->扩展列表(用另一个列表)
count()        --->计算并返回指定元素的数量
remove()      --->删除一个元素
pop()            --->删除并返回最后一个元素
sort()            --->按特定的顺序排序
insert()         --->在指定位置插入一个元素
copy()          ---> 拷贝一个副本
clear()          --->清空所有元素
reserve()       --->原地翻转所有的数据
index()          --->寻找并返回参数的索引值
通过dir(tuple) 查看只有index() 和 count() 适用于元组。

当我们希望数据不被改变时用元组,需要频繁修改则使用列表


元组相关操作符: 拼接(+)  、重复(*)、  in & not in、> >= < <=  ==  != 、not and or

评分

参与人数 1鱼币 +3 收起 理由
小甲鱼 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 05:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表