阅读 179
python 元组

python 元组

python 元组

python的元组和列表类似, 但是元组的元素是不允许修改的.

元组和列表有什么区别呢?

元组放弃了对元素的增删,内存结构设计上变的更精简,换取的是性能上的提升:创建元组比列表要快,存储空间比列表 占用更小

创建元组

元组使用 ()

# 创建空元组
tup = ()
# 输出
# ()

tup_1 = ('py', 'js', 'c', 'c++', 'java')
print(tup_1, type(tup_1))

# 输出
# ('py', 'js', 'c', 'c++', 'java') <class 'tuple'>

# 不使用括号 也可以
tup_2 = 1, 2, 3, 4, 5
print(tup_2, type(tup_2))

# 输出
# (1, 2, 3, 4, 5) <class 'tuple'>
复制代码

注意

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

# 不加逗号,类型为整型
tup_3 = (100)
print(tup_3, type(tup_3))

# 输出
# 100 <class 'int'>


# 加上逗号,类型为元组
tup_4 = (100,)
print(tup_3, type(tup_3))

# 输出
# 100 <class 'tuple'>
复制代码

访问元组

元组, 下表索引从 0 开始

img

tup_5 = ('js', 'py', 'c', 'java')
print(tup_5[0])
print(tup_5[3])
print(tup_5[:2])
print(tup_5[-1])

# 输出
# js
# java
# ('js', 'py')
# java
复制代码

修改元组

元组中的元素值是不允许修改的

删除元组

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

元组运算符

+号运算符

>>> (1, 2) + (3, 4)
#	(1, 2, 3, 4)
>>>
复制代码

* 赋值

>>> ('py',) * 10
('py', 'py', 'py', 'py', 'py', 'py', 'py', 'py', 'py', 'py')
复制代码

in 查找元素是否存在

>>> 10 in (1, 2, 3, 10, 50, 80)
True #存在返回True
>>> 100 in (1, 2, 3, 10, 50, 80)
False #不存在返回False
复制代码

for in 迭代遍历

>>> for i in ('x', 1, 2, 3, 'c', 'js'):
		print('---->', i)
----> x
----> 1
----> 2
----> 3
----> c
----> js
复制代码

元组内置函数

tup_6 = ('js', 'py', 'c', 'java', 'c++')

# len()
# 计算元组元素个数。
print(len(tup_6))

# 输出 5


tup_2 = (1, 2, 3, 4, 5)

# max(tuple)
# 返回元组中元素最大值
print(max(tup_2))

# 输出 5

# min(tuple)
# 返回元组中元素最小值
print(min(tup_2))

# 输出 1

# tuple(lists)
# 将可迭代系列转换为元组。
list_1 = [1, 2, 3, 4]
tup_7 = tuple(list_1)
print(tup_7)

# 输出 
# (1, 2, 3, 4)
复制代码

**

元组的不可变指的是元组所指向的内存中的内容不可变。

重新赋值的元组,绑定到新的对象了,不是修改了原来的对象。

[TOC]

python 元组

python的元组和列表类似, 但是元组的元素是不允许修改的.

元组和列表有什么区别呢?

元组放弃了对元素的增删,内存结构设计上变的更精简,换取的是性能上的提升:创建元组比列表要快,存储空间比列表 占用更小

创建元组

元组使用 ()

# 创建空元组
tup = ()
# 输出
# ()

tup_1 = ('py', 'js', 'c', 'c++', 'java')
print(tup_1, type(tup_1))

# 输出
# ('py', 'js', 'c', 'c++', 'java') <class 'tuple'>

# 不使用括号 也可以
tup_2 = 1, 2, 3, 4, 5
print(tup_2, type(tup_2))

# 输出
# (1, 2, 3, 4, 5) <class 'tuple'>
复制代码

注意

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

# 不加逗号,类型为整型
tup_3 = (100)
print(tup_3, type(tup_3))

# 输出
# 100 <class 'int'>


# 加上逗号,类型为元组
tup_4 = (100,)
print(tup_3, type(tup_3))

# 输出
# 100 <class 'tuple'>
复制代码

访问元组

元组, 下表索引从 0 开始

img

tup_5 = ('js', 'py', 'c', 'java')
print(tup_5[0])
print(tup_5[3])
print(tup_5[:2])
print(tup_5[-1])

# 输出
# js
# java
# ('js', 'py')
# java
复制代码

修改元组

元组中的元素值是不允许修改的

删除元组

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

元组运算符

+号运算符

>>> (1, 2) + (3, 4)
#	(1, 2, 3, 4)
>>>
复制代码

* 赋值

>>> ('py',) * 10
('py', 'py', 'py', 'py', 'py', 'py', 'py', 'py', 'py', 'py')
复制代码

in 查找元素是否存在

>>> 10 in (1, 2, 3, 10, 50, 80)
True #存在返回True
>>> 100 in (1, 2, 3, 10, 50, 80)
False #不存在返回False
复制代码

for in 迭代遍历

>>> for i in ('x', 1, 2, 3, 'c', 'js'):
		print('---->', i)
----> x
----> 1
----> 2
----> 3
----> c
----> js
复制代码

元组内置函数

tup_6 = ('js', 'py', 'c', 'java', 'c++')

# len()
# 计算元组元素个数。
print(len(tup_6))

# 输出 5


tup_2 = (1, 2, 3, 4, 5)

# max(tuple)
# 返回元组中元素最大值
print(max(tup_2))

# 输出 5

# min(tuple)
# 返回元组中元素最小值
print(min(tup_2))

# 输出 1

# tuple(lists)
# 将可迭代系列转换为元组。
list_1 = [1, 2, 3, 4]
tup_7 = tuple(list_1)
print(tup_7)

# 输出 
# (1, 2, 3, 4)
复制代码

**

元组的不可变指的是元组所指向的内存中的内容不可变。

重新赋值的元组,绑定到新的对象了,不是修改了原来的对象。

文章分类
阅读
文章标签