Python 元组的简述

元组特点:元组是有序的,不能修改。

元组的定义:

(1),通过()来定义:变量名=(1,2,3,4),是以逗号分割,以小括号包围的序列。

(2), 通过tuple 函数定义:

lst=[1,2,3,4]
a=tuple(lst)
print(a)

结果:
(1,2,3,4)

元组的优点:由于元组不可变,所以遍历元组比列表要快(较小的性能提升)

1,元组的创建

tup = (1, 2.2, True, 'ka')
print(tup)
print(type(tup))
输出结果:
(1, 2.2, True, 'ka')
<class 'tuple'>

2,访问元组

元组的索引和字符串以及列表完全一致

tup = (1, 2.2, True, 'ka')
ret = tup[1] #2.2 注意索引越界问题
# 通过切片来获取内容
tup=(1,2.2,True,'hello','赵四','刘能')
tup1=tup[0:4:1] #[1,2.2,True,'hello']

# 访问多维元组
tup = (('zs', 10), ('ls', 11), ('ww', 12))
ret = tup[1][0]
print(ret)  # ls  先找到内层元组,在获得里面对应的值

# 使用多个变量来接受元组中的值
# 注意:变量的个数和元组中的值的个数必须一一对应
name, age, height, weight = ('zs', 23, 1.76, 167)
print(name) # zs
print(age)  # 23
print(height) #1.76
print(weight) # 167

3,修改元组

元组是不可变的,但是如果元素本身是一个可变数据类型的列表,那么 其嵌套项可以被改变。

tup = ('zs', 'ls', 'ww', ['白骨精', '唐僧'])
tup[3].insert(1,'宋江')
print(tup) # ('zs', 'ls', 'ww', ['白骨精', '宋江', '唐僧'])
tup[3].append('宋江')
print(tup) # ('zs', 'ls', 'ww', ['白骨精', '宋江', '唐僧', '宋江'])

4,一个逗号的魅力

tup1 = (1)
tup2 = (1,)
print(type(tup1)) # <class 'int'>
print(type(tup2)) # <class 'tuple'>

可以看到没有逗号,变量就是整数型的,所以这就是一个逗号的魅力

5,tuple 函数

功能与 list 函数基本上是一样的

# tuple()函数和list()函数
lst = [1, 2, 3]
tup = tuple(lst)
print(tup) # (1, 2, 3)
tup = ('a', 'b', 'c')
ret = list(tup)
print(ret) # ['a', 'b', 'c']

6,元组的方法

因为元组是不可变的,所以方法只有两种 index 和 count ,用法也与列表一样

tup = ('a', 'b', 'c', 'a', 'b', 'c', 'g')
ret = tup.index('b')
ret1 = tup.index('a', 2, len(tup))
print(ret, ret1) # 1 3
ret2 = tup.count('a')
print(ret2) # 2

7,元组与字符串的区别

(1)、元组和字符串都是有序的,不可修改的序列

(2)、元组的元素可以是任何类型,字符串的元素只能是字符

(3)、元组的元素长度可以任意,字符串的元素长度只能为1

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值