| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1349 人关注过本帖
标题:Python语法学习记录之tuple该如何使用?
只看楼主 加入收藏
专注的蝴蝶
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2019-9-4
收藏
 问题点数:0 回复次数:0 
Python语法学习记录之tuple该如何使用?
一、介绍
1、使用元组的好处在于对元组进行操作更为高效,适合存放一组常量
2、Tuple 比 list 操作速度快
如果您定义了一个值的常量集, 并且唯一要用它做的是不断地遍历它。请使用 tuple 代替 list
3、dictionary keys 可以是字符串, 整数和 “其它几种类型”。Tuples就是这些类型之一。 Tuples 可以在 dictionary 中被用做 key 但是 list 不行。实际上,事情要比这更复杂。Dictionary key 必须是不可变的。Tuple本身是不可改变的, 但是如果您有一个list的tuple, 那就认为是可变的了,用做key就是不安全的。只有字符串, 整数或其它对 dictionary 安全的 tuple 才可以用作 dictionary key。
4、Tuple 是不可变 list,一旦创建了一个 tuple 就不能以任何方式改变它。
二、初始化
#tuple初始化
print("===="*5,"init")
tuple1 = (3,2,1)
list1 = [1,2,3]
print("tuple1:",tuple1)
print("list1:",list1)
tuple1 = ([1,2,3,'A','B','C'],4,'D')
list1 = ([1,2,3,'A','B','C'])
print("tuple1:",tuple1)
print("list1:",list1)
#tuple=====list相互转换
#如果对不需要修改的数据进行 “写保护”
#使用 tuple 而不是 list 如同拥有一个隐含的 assert 语句
#说明这一数据是常量。
#如果必须要改变这些值, 则需要执行 tuple 到 list 的转换 (需要使用一个特殊的函数)。
list2 = list(tuple1)
tuple2 = tuple(list1)
print("===="*5,"change")
print("tuple2:",tuple2)
print("list2:",list2)
三、索引
#tuple 索引
print("===="*5,"index")
tuple1 = (1,2,3)    #Tuple 固定的数组,一旦定义后,其元素个数是不能再改变的。
#tuple1.remove(1)   元组不能追加(append)元素,弹出(pop)元素等
#tuple1.append(4)   元组不能追加(append)元素,弹出(pop)元素等
print("tuple1[1]:",tuple1[1])  #只能对元组中的元素进行索引
#tuple1[1] = 100    不能对其中的元组进行赋值
四、添加
#元组的添加
print("===="*5,"add")
tuple1 = (1,2,3)
tuple2 = (4,5,6)
#不能直接改,但可与其他方法添加
tuple3 = tuple1 + tuple2
print("tuple3:",tuple3)
tuple4 = tuple1 + ('1',)
print("tuple4:",tuple4)
五、删除
#删除元组
print("===="*5,"del")
tuple1 = (1,2,3)
del tuple1
六、遍历
#遍历查看(与列表一样)
print("===="*5,"for")
tuple1 = (1,2,3)
for v in tuple1:
    print(v)
for i in range(len(tuple1)):
    print ("index = %s,value = %s" % (i, tuple1[i]))
for i, v in enumerate(tuple1):
    print ("index = %s,value = %s" % (i, v))
七、创建
tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";
访问:(与list一样)tup1[1:5];
修改:不可以修改,只能增加新的部分;
tup3 = tup1 + tup2;
print tup3;
八、任意无符号的对象,以逗号隔开,默认为元组,如下实例:
a=1,2,3,'e'
a=(1,2,3,'e').
九、Python元组包含了以下内置函数(与list差不多的函数)
1、cmp(tuple1, tuple2):比较两个元组元素。
2、len(tuple):计算元组元素个数。
3、max(tuple):返回元组中元素最大值。
4、min(tuple):返回元组中元素最小值。
5、tuple(seq):将列表转换为元组。
十、tuple的方法:
1、count():查找元素在tuple中出现的次数。
2.index():查找元素的第一个索引值。
十一、Tuple 是不可变 list。 一旦创建了一个 tuple 就不能以任何方式改变它。
①、Tuple 与 list 的相同之处
定义 tuple 与定义 list 的方式相同, 除了整个元素集是用小括号包围的而不是方括号。
Tuple 的元素与 list 一样按定义的次序进行排序。 Tuples 的索引与 list 一样从 0 开始, 所以一个非空 tuple 的第一个元素总是 t[0]。
负数索引与 list 一样从 tuple 外汇返佣http://www.,的尾部开始计数。
与 list 一样分片 (slice) 也可以使用。注意当分割一个 list 时, 会得到一个新的 list ;当分割一个 tuple 时, 会得到一个新的 tuple。
②、Tuple 不存在的方法
您不能向 tuple 增加元素。Tuple 没有 append 或 extend 方法。
您不能从 tuple 删除元素。Tuple 没有 remove 或 pop 方法。
然而, 您可以使用 in 来查看一个元素是否存在于 tuple 中。
③、用 Tuple 的好处
Tuple 比 list 操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用 tuple 代替 list。
如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用 tuple 而不是 list 如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行 tuple 到 list 的转换。
④、Tuple 与 list 的转换
Tuple 可以转换成 list,反之亦然。内置的 tuple 函数接收一个 list,并返回一个有着相同元素的 tuple。而 list 函数接收一个 tuple 返回一个 list。从效果上看,tuple 冻结一个 list,而 list 解冻一个 tuple。
搜索更多相关主题的帖子: print 转换 元素 改变 list 
2019-09-06 17:24
快速回复:Python语法学习记录之tuple该如何使用?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018218 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved