python之元组(tuple)知识点
元组与列表都是容器,两个的区别在于:
1.元组使用的是小括号,列表使用的是方括号
2.元组一旦定义不可修改,而列表是可以随意变更
创建元组
元组的创建与列表大同小异,逗号在元组中充当了元组的灵魂,创建元组时你可以不带上括号,但是必须带上逗号
# 创建空元组
tuple1 = tuple()
print(tuple1)
# 创建一个元素的元组,后面必须带上英文逗号(,)
tuple2 = ("fruit",)
print(tuple2)
# 创建元组时不带括号
tuple3 = "fruit", "pear", "apple", "banana"
print(tuple3)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
()
('fruit',)
('fruit', 'pear', 'apple', 'banana')
通过tuple()方法传入可迭代对象创建元组
# 通过tuple()方法将list转为tuple
tuple4 = tuple(["egg", "rice", "bacon"])
print(tuple4)
# 通过tuple()方法传入range对象
tuple5 = tuple(range(10))
print(tuple5)
# 通过tuple()方法传入dict
tuple6 = tuple({"rice": "米", "bacon": "培根"})
print(tuple6)
# 通过tuple()方法传入str
tuple7 = tuple("hello")
print(tuple7)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
('egg', 'rice', 'bacon')
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
('rice', 'bacon')
('h', 'e', 'l', 'l', 'o')
元组的读取
元组的读取与列表类似,通过下标读取,下标索引从0开始,下标不存在时抛出越界异常
# 读取下标为2的元素
tuple_1 = tuple3[2]
print(tuple_1)
# 尝试读取下标不存在的元素
tuple_2 = tuple3[5]
print(tuple_2)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
Traceback (most recent call last):
File "D:/demo/tuple_1.py", line 15, in <module>
tuple_2 = tuple3[5]
IndexError: tuple index out of range
apple
使用for语句遍历读取
for tuple_ in tuple3:
print(tuple_)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
fruit
pear
apple
banana
元组切片
元组也可以进行切片操作,与列表一样,可参考列表切片操作,此处不再赘述
print(tuple3)
# 截取整个元组
slice1 = tuple3[:]
# 截取偶数位的所有元素
slice2 = tuple3[::2]
# 反向截取
slice3 = tuple3[::-1]
print(slice1)
print(slice2)
print(slice3)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
('fruit', 'pear', 'apple', 'banana')
('fruit', 'pear', 'apple', 'banana')
('fruit', 'apple')
('banana', 'apple', 'pear', 'fruit')
元组删除
# 元组中的元素不可编辑,只能删除整个元组
del tuple3
print(tuple3)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
Traceback (most recent call last):
File "D:/demo/tuple_1.py", line 47, in <module>
print(tuple3)
NameError: name 'tuple3' is not defined
元组中其他常用方法
count()用于计算某个元素在元组中出现的次数
count_ = tuple3.count("rice")
print(count_)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
0
统计字符出现的个数或元组内出现的元素次数等也可以用 Counter方法, Counter 是一个 dict 的子类,用于计数可哈希对象
from collections import Counter
counter_ = Counter(tuple3)
print(counter_)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
Counter({'fruit': 1, 'pear': 1, 'apple': 1, 'banana': 1})
tuple 中的index()方法同list中的index()方法,用来查找某个元素所在的索引位置,当元组中有多个相同的元素时,默认返回第一个匹配的元素索引位置,若找不到则抛出异常
格式:[obj, start, end]
obj :需要查找的对象
start: 起始查找位置,不填写时默认为0
end: 结束查找位置,不包含end,不填写时默认为元组长度
index_ = tuple3.index("pear", 0, 3)
print(index_)
打印结果:
"D:\Program Files\Python\Python37-32\python.exe" D:/demo/tuple_1.py
1
python之元组(tuple)知识点的更多相关文章
- python中元组tuple
python中列表(list)和元组(tuple)有很多相似的地方,它们都是容器,由一系列的对象构成,都可以包含任意类型的元素,甚至是一个序列. list和tuple的不同首先体现在写法上: li ...
- python基础——元组(tuple)
Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. tuple1 = () tuple2 = ...
- python基础-元组(tuple)及内置方法
元组-tuple 用途:用于存储多个不同类型的值,但是不能存储可变类型数据 定义方法:用小括号存储数据,数据与数据之间通过逗号分隔,元组中的值不能改变. 注意: 1.定义元组时,如果里面只有一个值,在 ...
- Python 创建元组tuple
创建tupletuple是另一种有序的列表,中文翻译为“ 元组 ”.tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了.同样是表示班里同学的名称,用tuple表示如下:&g ...
- python入门 元组tuple (三)
什么if while语句了 列表字典都太简单了 ,我直接跳过了, 开始写tuple了 增 元组格式是写在括号里,注意与列表(写在中括号里)的区别 tup1 = ('math', 'beijing', ...
- python 数据结构-元组tuple
tuple0=() #空 tuple1="wo", #元组中包括单个元素用, tuple2="monkey","cat","chi ...
- Python - 多元组(tuple)
声明一个多元组 (4, 5, 6) 这是列表 [4, 5, 6] 与列表不一样在于多元组使用() 来组织元素而list使用方括号[] 而且多元组不能更改,用于当你的数组不想像list一样会被更改时就使 ...
- Python从零开始——元组tuple
一:元组知识内容 二:元组的不可变性 三:元组创建 四:元组操作
- python day4 元组/字典/集合类知识点补充
目录 python day4 元组/字典/集合类知识点补充 1. 元组tuple知识点补充 2. 字典dict的知识点补充 3. 基本数据类型set 4. 三元运算,又叫三目运算 5. 深复制浅复制 ...
- Python—元组tuple
列表的知识其实就类似于c语言中的数组,可插入.修改.list=[a,b,c,d] 而元组tuple,一旦初始化即不可修改.好处与绝对安全. 定义一个空的元组:t=() 定义只有一个元素的元组:t=(1 ...
随机推荐
- do...while循环体
基本语法 不要忘记while()后还需要加分号!!! 例(输出五句hello): int i = 1; //循环变量初始化 int max = 5; //循环的最大次数 do{ printf(&quo ...
- [笔记] 兰道定理 Landau's Theorem
兰道定理的内容: 一个竞赛图强连通的充要条件是:把它的所有顶点按照入度d从小到大排序,对于任意\(k\in [0,n-1]\)都不满足\(\sum_{i=0}^k d_i=\binom{k+1}{2} ...
- 前端微信登录获取code,userInfo,openid
getUser(e) { wx.getUserProfile({ desc: '用户完善会员资料', success: res => { let userInfo = res.userInfo; ...
- EFCore (三)悲观锁 和 乐观锁
原理 UPDATE [Person] SET [FirstName] = @p1 WHERE [PersonId] = @p0 AND [LastName] = @p2; 在 SaveChanges ...
- Kafka之概述
Kafka之概述 一.消息队列内部实现原理 (1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除) 点对点模型通常是一个基于拉取或者轮询的消息传送模型,这种模型从队列中请求信息,而不是将消 ...
- iptables使用详解
iptables使用详解 @(linux)[iptables] 前言 最近买了一个VPS,并在上面搭了DOCKER,然后再DOCKER中安装Mysql.但只要将网络端口映射到宿主机上,那么外部网络就可 ...
- Oracle注入
Oracle 查询出所有的表 select * from all_tables 查询出当前用户的表 select * from user_tables 查询出所有的字段 select*from all ...
- HFS局域网分享文件的神器(附下载链接)
温馨提示,下载链接在页末 前言 假如说你需要传递个学习资料给好基友,我们有许多种方式可选:硬盘媒介.网络分享等. 要是论速度,还是得拿3.0或以上的U盘来拷贝,确实神速哈哈.但是其也有局限性,比如需要 ...
- Unexpected token u in JSON at position 0
文章目录 1.1 错误原因: 1.2 解决思路: 1.1 错误原因: 因为JSON.parse()不能解析字符串中的undefined 出错的结果:某一行的这个字段的值为空,就会报错,整个表格都显示不 ...
- python求列表均值,方差,标准差
import numpy as np a = [1,2,3,4,5,6] #求均值 a_mean = np.mean(a) #求方差 a_var = np.var(a) #求标准差 a_std = n ...