元组与列表类似,不同之处在于元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

一、创建元组

1、普通创建

实例1:

>>> tupl1 = ('abc',123,'ddd')

>>> type(tupl1)                            #查看类型

<class 'tuple'>

>>> tupl1

('abc', 123, 'ddd')输出:

<class 'tuple'>

('abc', 12, 'sdjf', 888)

实例2:

>>> tupl2='a','b','c'               #不加括号也可以

>>> type(tupl2)

<class 'tuple'>

>>> print(tupl2)

('a', 'b', 'c')

2、创建空元组

>>> tupl = ()

>>> tupl

()

3、元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用:

>>> tup1 = (1)                    #不加逗号,类型为整形

>>> type(tup1)

<class 'int'>

>>> tupl2 = (1,)                    #加逗号,类型为元组

>>> type(tupl2)

<class 'tuple'>

二、访问元组

可以使用下标索引进行访问

实例1:

tupl1 = ('abc',12,'sdjf',888)
print(tupl1[1])

输出:

12

实例2:

tupl1 = ('abc',12,'sdjf',888)
print(tupl1[1::2])

输出:

(12, 888)

三、修改元组

元组不能修改,但是可以对元组进行连接组合。

实例:

tupl1 = ('abc',12,'sdjf',888)
tupl2 = (1,2,3)
tupl3 = tupl1 + tupl2           #创建新元组
print(tupl3)

输出:

('abc', 12, 'sdjf', 888, 1, 2, 3)
6、删除元组

元组不允许删除,但是可以用del删除整个元组

实例:

tupl1 = ('abc',12,'sdjf',888)
print('删除前元组:',tupl1)
del tupl1                            #整个这个变量都删除了
print('删除后元组:',tupl1)

输出:

删除前元组: ('abc', 12, 'sdjf', 888)

Traceback (most recent call last):

File "test.py", line 4, in <module>

print('删除后元组:',tupl1)

NameError: name 'tupl1' is not defined

四、元组函数用法

1、count()

用于统计某个元素在元祖中出现的次数。

语法:

tupl.count(obj)

参数:

obj -- 元祖中统计的对象。

实例:

tupl = ('abc',12,'sdjf',888,12)
print(tupl.count(12))

输出:

2

2、index()

用于从元祖中找出某个对象第一个匹配项的索引位置,如果这个对象不在元祖中会报一个异常。

语法:

tupl.index(obj[,start=0[,end=len(tupl)]])

参数:

obj -- 指定检索的对象。

start -- 可选参数,开始索引,默认为0。(可单独指定)

end -- 可选参数,结束索引,默认为元祖的长度。(不能单独指定)

实例1:

tupl = ('abc',12,'sdjf',888,12,888)
print(tupl.index(12))

输出:

1

实例2:

tupl = ('abc',12,'sdjf',888,12,888)
print(tupl.index(12,3,len(tupl)))                 #从第三个索引开始查找

输出:

4

3、tuple()

用于将可迭代对象(字符串、列表、元祖、字典)转换为元组。

实例1:列表转元组

list = [1,2,3,4]
print(tuple(list))           #将列表转为元组

输出:

(1, 2, 3, 4)

实例2:字典转元组

a = {1:'a',2:'b'}
print(tuple(a))                #将字典转成元组,返回字典中key值组成元组

输出:

(1, 2)

实例3:元组转元组

a = ('a','b','c')
print(tuple(a))                #元组返回元组本身

输出:

('a', 'b', 'c')

4、max()

返回元组中元素最大值。

实例:

a = ('a','b','c')
print(max(a))                #返回最大值

输出:

C

5、min()

返回元组中最小值

实例:

a = (2,3,4,24,56,45,0)
print(min(a))                #返最小值

输出:

0

day3_元组的更多相关文章

  1. python 数据类型 -- 元组

    元组其实是一种只读列表, 不能增,改, 只可以查询 对于不可变的信息将使用元组:例如数据连接配置 元组的两个方法: index, count >>> r = (1,1,2,3) &g ...

  2. 【.NET深呼吸】元组数据(Tuple)

    各位观众,大家好,欢迎收看由火星电视台直播的<老周吹牛>节目,注意:本节目没有任何技术含量,如果您没有兴趣,请砸掉电视机. 今天说一下System命名空间下的一个数据类型——Tuple,翻 ...

  3. python学习笔记(列表、元组、购物车实例)

    一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...

  4. python之最强王者(7)——元组(tuple)

    1.序列(sequence): 说明:在前面的字符串列表中其实我们已经用到了序列,之所以放到这篇来讲主要是为了承上启下,方便理解和记忆. python的数据访问模型:直接存取 ,序列 ,映射 对非容器 ...

  5. Python元组

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

  6. Scala元组

    object TupleTest { def basic(firstName: String, lastName: String, age: Int): (String, String, Int) = ...

  7. python 的 集合,字典,元组,列表

    元组 tuple  a = (1,2,3) 元组不能修改 可权嵌套列表  如 (1,2,3,[1,2,3]) 里面的列表可修改  一般不这样用 列表list  a = [1,2,3] 集合set  a ...

  8. Python列表和元组

    Python是没有数组的概念,但是和数组比较相近的概念是列表和元素. 下面两个例子展示列表和元组. # coding=utf-8 # 元组 students = ('小明', '小黄', '小李', ...

  9. c# 元组Tuple

    Tuple类型像一个口袋,在出门前可以把所需的任何东西一股脑地放在里面.您可以将钥匙.驾驶证.便笺簿和钢笔放在口袋里,您的口袋是存放各种东西的收集箱.C# 4.0引入的一个新特性 Tuple类型与口袋 ...

随机推荐

  1. MySQL 5.7的安装及主从复制(主从同步)

    1.master上开启binlog日志,配置如下 一般mysql配置文件在目录/etc下,叫my.cnf (如果找不到的话也有可能在这些目录下:/etc/my.cnf,/etc/mysql/my.cn ...

  2. Java如何使服务器允许连接到套接字端口?

    在Java编程中,如何使服务器允许连接到套接字端口? 以下示例显示如何使服务器通过使用ServerSocket类的server.accept()方法和Socket类的sock.getInetAddre ...

  3. Linux磁盘概念及其管理工具fdisk

    Linux磁盘概念及其管理工具fdisk [日期:2016-08-27] 来源:Linux社区  作者:chawan [字体:大 中 小]   引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘 ...

  4. (原)关于获取ffmpeg解析rtsp流sdp中带有sps,pps的情况

     转载请注明出处:http://www.cnblogs.com/lihaiping/p/6612511.html 今天同事准备在android下使用ffmpeg来获取rtsp流,问我如何获取获取sps ...

  5. wvblk 把 xp、2003、win7(32位) 装入 VHD

    关键1:是[预安装]阶段F6加载wvblk驱动: or 在还原ghost镜像后,导入wvblk驱动. 关键1.5:对于 win7(32位)来说,还可以在设备管理器内,通过添加“过时”硬件的方式导入wv ...

  6. [JS] ECMAScript 6 - Variable : compare with c#

    前言 范围包括:ECMAScript 新功能以及对象. 当前的主要目的就是,JS的学习 --> ECMAScript 6 入门 let 命令 js 因为let, i的范围限制在了循环中. var ...

  7. hashcode、equals和 ==详解

    两个对象值相同(x.equals(y) == true),则一定有相同的hash code: 这是java语言的定义: 因为:Hash,一般翻译做“散列”,也有直接音译为"哈希"的 ...

  8. android中volley通信框架简介

    1. 什么是Volley? 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient ...

  9. distri.lua线程间通信的设计

    首先简单介绍下distri.lua中的线程设计方案. distri.lua提供一个API函数fork用于创建新的C线程,这个C线程运行独立的lua虚拟机,为了在各线程之间通信 每个线程都会创建一个ch ...

  10. 三、K3 Cloud 开发插件《K3 Cloud插件开发新手指导 + K3 Cloud插件开发代码调试》

    案例需求:在销售订单上新增一个按钮,在订单明细中新增一个字段,命名[即时库存]. 点击按钮,弹出“Hello World!”,并获取订单明细物料的即时库存,填入字段[即时库存]. 开发工具:Visua ...