元组被称为只读列表,数据可被查询,但不能被修改,类似于列表的切片操作,元组写在小括号里面()元素之前用逗号隔开

对于一些不想被修改的数据,可以用元组来保存

#  创建元组

1)创建空元组

# 创建空元组
tup = ( )
print (tup)
print (type(tup)) # 使用type函数查看类型 #输出结果
()
<class 'tuple'>

2)创建元组 (只有一个元素时,在元素后面加上逗号)

# 创建元组 (只有一个元素时,在元素后面加上逗号)
tup = (1,) # 元组中只有一个元素时,在元素后面加上逗号,否则会被当成其他数据类型处理
print (tup)
print (type(tup)) # 使用type函数查看类型 #输出结果
(1,)
<class 'tuple'>
# 创建元组 (只有一个元素时,在元素后面加上逗号)
tup = (1) #不加逗号,会被当成其他数据类型处理
print (tup)
print (type(tup)) # 使用type函数查看类型 #输出结果
1
<class 'int'>

3)创建元组(多个元素)

tup = (1,2,["a","b","c"],"a")
print (tup) #输出结果
(1, 2, ['a', 'b', 'c'], 'a')

4) # 将列表转化为元组

list_name = ["python book","Mac","bile","kindle"]
tup = tuple(list_name) # 将列表转为元组
print(type(list_name)) # 查看list_name类型,并将结果打印出来
print(type(tup)) # 查看tup类型,并将结果打印出来
print (tup) # 输出结果
<class 'list'>
<class 'tuple'>
('python book', 'Mac', 'bile', 'kindle')

# 查询

tup = (1, 2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang'))

print ("tup[0] =",tup[0]) # 打印索引为0的元素
#输出结果
tup[0] = 1 print ("tup[1:] =",tup[1:]) #从索引为1到最后一个元素
#输出结果
tup[1:] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang')) print ("tup[:-1] =",tup[:-1]) # 到倒第二个元素但不包含第二个
#输出结果
tup[:-1] = (1, 2, ['a', 'b', 'c'], 'd', 'e') print ("tup[1::1] =",tup[1::1]) # 等价于tup[1:] 从左到右一个个去取,步长为1
#输出结果
tup[1::1] = (2, ['a', 'b', 'c'], 'd', 'e', ('gu', 'tang')) print ("tup[1::2] =",tup[1::2]) #从左到右隔一个去取 步长为2
#输出结果
tup[1::2] = (2, 'd', ('gu', 'tang')) print ("tup[::-1]",tup[::-1]) # 反向输出 步长为1
#输出结果
tup[::-1] (('gu', 'tang'), 'e', 'd', ['a', 'b', 'c'], 2, 1) print ("tup[::-2]",tup[::-2]) # 反向输出 步长为2(隔一个去取))
#输出结果
tup[::-2] (('gu', 'tang'), 'd', 2)

# del  删除  (元素对象不支持删除,但是可以删除整个元组变量)

# del 删除元组中元素
up = ('tang', 'guo', 'li','xiu')
del tup[0] # 元素对象不支持删除
# print (tup) #输出结果
TypeError: 'tuple' object doesn't support item deletion
tup = ('tang', 'guo', 'li','xiu')
del tup #删除
print (tup) # del tup ,内存已删除,在打印将提示未定义 #输出结果
NameError: name 'tup' is not defined

# count 统计元素个数

# count 统计元素个数
tup = ('tang', 'guo', 'li','guo').count('guo')
print (tup) #输出结果
2

#  index 返回元素的索引位置

# index 返回元素的索引位置
tup = ('tang', 'guo', 'li','xiu')
print (tup.index('li')) # 返回元素'ii'的索引位置 #输出结果
2

# len  计算元组中元素的个数

# len   计算元组中元素的个数
tup = ('tang', 'guo', 'li','xiu')
print (len(tup)) # 计算元组长度 #输出结果
4

注意事项:

1、当元组中一个元素时,一定要在元素后面加上逗号

2、元组中的元素是不允许删除的,但可以使用del语句来删除整个元组

3、元组没有列表中的增、删、改的操作,只有查的操作

python——元组(tuple)基本操作的更多相关文章

  1. Python 元组 tuple() 方法

    描述 Python 元组 tuple() 方法用于将可迭代对象(字符串.列表.元祖.字典)转换为元组. 语法 tuple() 方法语法: tuple(iterable) 参数 iterable -- ...

  2. Python元组tuple(不可变)

    Python元组Tuple(不可变): 元组的特点: 1.元组的初始化: tuple = (1, )  #元组只有一个元素的话,初始化时要加,否则当做元素的普通变量类型处理 tuple = (1, 2 ...

  3. python 元组tuple - python基础入门(14)

    在上一篇文章中我们讲解了关于python列表List的相关内容,今天给大家解释一下列表List的兄弟 – 元组,俗称: tuple. 元组tuple和列表List类似,元组有如下特点: 1.由一个或者 ...

  4. python 元组tuple介绍,使用。

    原文 https://blog.csdn.net/ruanxingzi123/article/details/83184909 一  是什么? # python 元组tuple? ''' 元祖tupl ...

  5. Python—元组tuple

    列表的知识其实就类似于c语言中的数组,可插入.修改.list=[a,b,c,d] 而元组tuple,一旦初始化即不可修改.好处与绝对安全. 定义一个空的元组:t=() 定义只有一个元素的元组:t=(1 ...

  6. Python - 元组(tuple) 详解 及 代码

    元组(tuple) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17290967 元组是存放任意元素集合,不能修 ...

  7. Python元组(tuple)

    元组(tuple)是Python中另一个重要的序列结构,与列表类型,也是由一系列按特定顺序排列的元素组成,但是他是不可变序列.在形式上元组的所有元素都放在"()"中,两个元素使用& ...

  8. Python 元组(Tuple)操作详解

    Python的元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号, 列表使用方括号,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可 一.创建元组 代码如下: tup1 = (' ...

  9. Python 元组Tuple概念和操作

    # 元组概念:有序的不可变的元素集合 # 和列表的区别就是, 元组元素不能修改 # 定义 # 一个元素的写法 # (666,) t = (666,) #正确写法 t = (666) #错误写法,括号当 ...

  10. 元组(tuple)基本操作

    1.定义元组,Python的元组和列表类似,不同之处在于元组中的元素不能修改(因此元组又称为只读列表),且元组使用小括号而列表使用中括号 dimensions.py , ) print(dimensi ...

随机推荐

  1. font not embeded

    转自:http://blog.csdn.net/chenyusiyuan/article/details/4078671,感谢分享! 装了半天adobe acrobat distiller 要泪崩,解 ...

  2. mvc页面间的传值

    本文大致讲解mvc前后端的传值方式,包括control向view.view向control.以及action向action. 回顾 我们回顾下在ASP.NET WebForms中,页面之间最常用的传值 ...

  3. Python数组使用

    python数组的使用 2010-07-28 17:17 1.Python的数组分三种类型: (1) list 普通的链表,初始化后可以通过特定方法动态增加元素. 定义方式:arr = [元素] (2 ...

  4. March 28 2017 Week 13 Tuesday

    Never was anything great achieved without danger. 不经历风雨,又怎能见彩虹. After the rain, if there's the sunsh ...

  5. 数据结构与算法分析java——线性表3 (LinkedList)

    1. LinkedList简介 LinkedList 是一个继承于AbstractSequentialList的双向链表.它也可以被当作堆栈.队列或双端队列进行操作.LinkedList 实现 Lis ...

  6. 如何将iso文件安装到VirtualBox里的ubuntu去

    我在Window的virtualbox里安装了一个ubuntu: 默认情况下IDE Secondary Master是空的. 方法1:Devices->Insert Guest Addition ...

  7. 如何从ERP将Material的Batch信息下载到CRM并存储在settype COMM_PR_BATCH里

    前提条件:必须先确保三个对象ATTRIBUTE, CLASS和OBJCL成功下载.可以到事物码R3AM1里查看,确保状态全部为Done. (1) 在事物码MM02里,切换到视图classificati ...

  8. Android(java)学习笔记31:泛型高级之通配符

    1. 泛型高级之通配符: package cn.itcast_07; import java.util.ArrayList; import java.util.Collection; /* * 泛型高 ...

  9. OpenCV人脸识别

    import cv2 filename = 'pic.jpg' def detect(filename): face_cascade = cv2.CascadeClassifier('./haarca ...

  10. 课堂笔记:HTML---------一般标签、常用标签

    HTML:超文本标记语言 HTML标签---成对儿出现的是双标签元素,单个儿出现的是单标签元素 一.通用标签 1.格式控制标签 <font></font> 文字 color-文 ...