py基础(4)元组

元组,在python中用tuple表示,它与列表有些类似,可以储存数据,相较于列表的可以修改、增添元素的特性,元组一旦形成便不可以修改,就像是不可以改变的列表。

1.创建一个tuple,list的标志是一对中括号,而元组则是一对小括号

>>> t = ()          ;; 创建一个空元组
>>> type(t)         ;; type函数用来判断括号内对象的类型
<class ‘tuple‘>

>>> t = (1)         ;; 如果添加了元素,那么必须要有小写英文逗号,才能被判定为元组
>>> type(t)
<class ‘int‘>
;; 方法1
>>> t = (1,)
>>> type(t)
<class ‘tuple‘>
;; 方法2
>>> t = 1,          ;; 没有小括号也可以,只要有逗号,也可以判定为元组
>>> type(t)
<class ‘tuple‘>
>>> t = 1, 2, 3, 4
>>> t
(1, 2, 3, 4)
>>> t = "5", 5, -5  ;; 添加一个有字符串、整数元素的元组
>>> t
(‘5‘, 5, -5)

2.列表和元组
Jake有两个书架,一个书架上摆满了文学书,假设这个书架是一个列表;一个则摆满了英语书,设这个是一个元组。

;; 文学书架上现在有:
>>> l = ["one", 1, 0.5]
>>> l                ;; 书架上有三本书
[‘one‘, 1, 0.5]
>>> l[0] = "two"     ;; Jake可以随意改变书架上的书
>>> l
[‘two‘, 1, 0.5]
>>> l[0]             ;; 也可以通过索引进行读取
‘two‘
>>> l[1:3]           ;; 通过分片来一次性拿好几本书
[1, 0.5]

;; 英语书架上现在有:
>>> t = "one", 1, 2
>>> t[0] = "two"     ;; Jake想要换掉第一本书,但报错了,元组的元素一旦确定,就不能改变
Traceback (most recent call last):
  File "<pyshell#29>", line 1, in <module>
    t[0] = "two"
TypeError: ‘tuple‘ object does not support item assignment
>>> t[0]             ;; 可以通过索引来拿一本书来看
‘one‘
>>> t[0:]            ;; 通过分片来一次性拿很多书
(‘one‘, 1, 2)

:: 不可变的元素,因为不能被修改,所以这可以避免因为其他原因而导致元组内的元素发生改变的情况

>>> t = "one", 1, 2
>>> k = list(t)       ;; 利用list函数,可以将t中的元素变成一个列表,但t仍然是个元组
>>> t
(‘one‘, 1, 2)
>>> k                 ;; 只是利用t中的元素而已,并不会改变t
[‘one‘, 1, 2]
>>> t1 = tuple(k)     ;; 同样,利用k中的元素,和tuple函数,也可以创建一个新的元组
>>> t1
(‘one‘, 1, 2)

3.tuple的函数

>>> t = (1, 3, 5, 2) ;; 创建一个新的元组
>>> t.index(1)       ;; index可以通过元素名来返回该元素在元组中的位置
0
>>> t.index(5)
2
>>> t1 = (1, 2, 2, 3)
>>> t1.index(2)      ;; 若是元组中有多个相同元素, 则返回由左到右的第一个元素位置
1

>>> t = (1, 2, 2, 2, 3, 3)
>>> t.count(2)       ;;  count用来返回所求元素在元组中的数量,元组中有3个元素名为2的元素
3
>>> t.count(3)       ;; 两个元素3
2

4.特殊的tuple

>>> t = (1, 3, 4, [4, 5])  ;; 元组中可以有元素是一个列表
>>> t[3][0]                ;; 这个的意思是:元组t中的第三个元素中的第0个元素
4                          ;; 注意:计算机中是以0开始的,而不是以1开始
>>> t = (1, 3, 4, (4, 5, (12, 2, 4)))  ;; 元组中可以存在元组
>>> t
(1, 3, 4, (4, 5, (12, 2, 4)))

>>> t = (1, 3, 4, [4, 5])  ;; 元组中存在一个列表
>>> t[3][0] = "one"        ;; 因为指定的元素是一个列表的元素,所以可以更改,若是元组,则报错
>>> t
(1, 3, 4, [‘one‘, 5])

小结:元组不可变的特性,就要求我们在元组创立之初,就要想好元组中要放哪些元素。同时,不可变也保证了数据的安全。

原文地址:https://www.cnblogs.com/nianqiantuling/p/9131007.html

时间: 2024-08-30 14:20:58

py基础(4)元组的相关文章

Swift语言指南(八)--语言基础之元组

元组 元组(Tuples)将多个值组合为一个复合值.元组内的值可以是任何类型,各个元素不需要为相同类型(各个元素之间类型独立,互不干扰--Joe.Huang). 下例中,(404, "Not Found") 是一个描述HTTP状态码的元组.HTTP状态码是当你向WEB服务器请求页面时服务器返回的一个特殊值,如果你(向WEB服务器)请求了一个不存在的网页,返回的状态码就是 404 Not Found : 1 let http404Error = (404, "Not Found

python基础深入(元组、字符串、列表、字典)

python基础深入(元组.字符串.列表.字典) 一.列表 1.追加 1 >>>list = [1,2,3,4] #用于在列表末尾添加新的对象,只能单个添加,该方法无返回值,但是会修改原来的列表. 2 >>>list.append(5) 3 >>>print(list) 4 [1, 2, 3, 4, 5] 2.统计 1 >>>list = [1,"a","b","c",1,4

8.02 PY基础之数字类型的内置方法

目录 PY基础之数字类型的内置方法 整型内置方法(int) 定义 常用操作+内置方法 存一个值or多个值 有序or无序 可变不可变 浮点型内置方法(float) PY基础之数字类型的内置方法 整型和浮点型统称为数字类型 整型内置方法(int) 定义 可以使用int()方法将纯数字的字符串转为十进制的整型 age = '19' age = int(age) print(age) # 19 type(age) = int x = int('11.1') print(x) # 报错 常用操作+内置方法

第3章 py基础考察点

py基础考察点 py语言特性 py是动态强类型语言 动态还是静态指的是编译期还是运行期确定类型 强类型指的是不会发生隐式类型装换 为什么使用py? * 胶水语言,轮子多,应用广泛 * 语言灵活,生产力高 * 性能问题,代码维护问题,py2/py3不兼容 什么是鸭子类型? 当看到一只鸟走起来像鸭子,游泳起来像鸭子,叫起来也像鸭子,那么这只鸟就可以被称为鸭子 关注点 在对象的行为,而不是类型(duck typing) eg: file,StringIO,socket对象都支持read/write方法

py基础2

Py常见数据类型的基础操作 1.字符串类型:str 关键字 说明 属性 Capitalize 首字母大写 Center 字符串居中.空白处可以用一个任意的字符代替 Count 统计字符串的长度 Encode 转换成字节 输出以16进制显示,存储的是二进制 Endswith 以什么结尾,可以指定区间 Startwith 以什么开头,- Expandtables 找到制表符并进行替换 输出表格形式的值 Find 查找字符串的索引位置,如果不存在返回-1 Index 查找字符串的索引位置,如果不存在报

Python学习笔记-Day2-Python基础之元组操作

元组的常用操作包括但不限于以下操作: 元组的索引,计数等 这里将对列表的内置操作方法进行总结归纳,重点是以示例的方式进行展示. 使用type获取创建对象的类 type(tuple) 使用dir获取类的成员dir(list) 使用vars获取类的成员和各个成员的值 1.    tuple.count   返回元组元素个数 2.    tuple.index 返回元组索引

python基础:元组、字典、深浅拷贝与函数

小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------谢谢您的参考,如有疑问,欢迎交流 一. 元组(tuple) 1. 元组的特点 元组是固定的,不能修改也不能增减.因为元组不可变,所以更安全,如果可以,尽量不使用list而使用tuple 2.  格式 3.  可用参数 4.  元组的结构(以元组a为例) 当创建一个元组a时,将在内存中开辟一个名为a的内存,然后每个索引位置为一个命名空间,每个命名空间都有一个存储,而真实的数据就存在

修炼Python基础篇-元组(tuple)学习

字典是另一种可变容器模型,且可存储任意类型对象,字典的每个键值(key=>value)对用冒号(:)分割,每个键值对之间用逗号(,)分割,整个字典包括在花括号({})中: 字典特性: 1.不允许同一个键出现两次,创建时如果同一个键被赋值两次,最后一个键值生效: 2.键值必须不可变,可以用数字.字符串或元组充当,因列表是可变的,所以不可以用列表做为键值: 访问字典中的元素: dict ={'shanghai':'pudong','sichuan':'chengdu'} print(dict) {'

1.11 Python基础知识 - 元组

元组(tuple)是一组有序系列,元组和列表是否相似,但是元组是不可变的对象,不能修改.添加或删除元组中的元素,但可以访问元组中的元素 元组的定义: 元组采用圆括号中用逗号分隔的元素 元组的基本操作和列表类似,支持索引,切片,长度,计算等 示例代码1:计数 name = 1,2,3,4,5,2,3,1,2 print(name.count(2)) # 输出结果 3 示例代码2:索引 name = 1,2,3,4,5,2,3,1,2 print(name.index(5)) # 输出结果 4