前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python元组(文末彩蛋)

Python元组(文末彩蛋)

作者头像
互联网老辛
发布2018-10-18 17:32:15
4200
发布2018-10-18 17:32:15
举报
文章被收录于专栏:互联网老辛互联网老辛

元组其实跟之前讲过的列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表,用小括号()表示。

举个栗子:

元组创建:

>>> tup1 = () # 创建空元组[quote]

>> tup2 = ('DEV', 'DBA', 1, 2, 3) # 中括号方式

>>> tup3 = "x", "y", "z" # 字符串排列方式

>>>

# 元组中只包含一个元素时,需要在元素后面添加逗号

>>> tup4 = ('openskill')

>>> print(tup4)

openskill

>>> tup5 = ('xinsz08.cn',)

>>> print(tup5)

('xinsz08.cn',)

tuple(元组)是一种特殊的列表,不同点是元组一旦创建就不能修改,上述的所有会修改列表内容的操作例如 sort()、append()等对于元组都不再适用:

>>> courses = ('C++', 'Cloud', 'Linux', 'PHP')

>>> courses

('C++', 'Cloud', 'Linux', 'PHP')

>>> courses[0]

'C++'

>>> courses.sort()

Traceback (most recent call last):

File"<stdin>", line 1, in <module>

AttributeError: 'tuple' object has no attribute 'sort'

>>> del courses[0]

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

TypeError: 'tuple' object doesn't support item deletion

在编写程序的时候,元组比列表更安全,如果是只读的数据,尽可能使用元组,另外务必在使用过程中时刻记住元组是不可修改的,但是元组中如果包含可变的数据元素,这些数据元素是可以修改的,例如元组中包含一个列表,这个列表的内容是可以修改的:

>>> new_courses = ('Linux', ['BigData1','BigData2','BigData3'],'Vim')

>>> new_courses[1]

['BigData1', 'BigData2', 'BigData3']

>>> new_courses[1].append('BigData4')

>>> new_courses

('Linux', ['BigData1', 'BigData2', 'BigData3','BigData4'], 'Vim')

最后,需要提醒下如果要创建只有一个元素的元组,是不可以直接使用括号中一个元素的,需要在元素值后面跟一个逗号:

>>> courses = ('Linux')

>>> courses

'Linux'

>>> type(courses)

<type 'str'> //这个是字符串类型啊亲

>>> courses = ('Linux',)

>>> courses

('Linux',)

>>> type(courses)

<type 'tuple'> //这才是元组啊亲

修改元组 元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,如下实例:

代码语言:javascript
复制
#!/usr/bin/env python3
代码语言:javascript
复制
# _*_coding:utf-8_*_
代码语言:javascript
复制
# Author: Lucky.chen
代码语言:javascript
复制
代码语言:javascript
复制
tup1 = (200000, 400000)
代码语言:javascript
复制
tup2 = ('MG', 'JD')
代码语言:javascript
复制
代码语言:javascript
复制
# 以下修改元组元素操作是非法的。
代码语言:javascript
复制
# tup1[0] = 100;
代码语言:javascript
复制
代码语言:javascript
复制
# 创建一个新的元组
代码语言:javascript
复制
tup3 = tup1 + tup2
代码语言:javascript
复制
print(tup3)

删除元组 元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:

代码语言:javascript
复制
#!/usr/bin/env python3
代码语言:javascript
复制
# _*_coding:utf-8_*_
代码语言:javascript
复制
# Author: Lucky.chen
代码语言:javascript
复制
代码语言:javascript
复制
tup = ('dog', 'cat', 3000, 2000)
代码语言:javascript
复制
代码语言:javascript
复制
print(tup)
代码语言:javascript
复制
del tup
代码语言:javascript
复制
print("After deleting tup : ")
代码语言:javascript
复制
print(tup)

总结:

  1. 1. 可读的不能修改的列表
  2. 增加删除元素不能操作
  3. 删除整个元组 (可以的)
  4. ()在元组里面是可以有列表,我可以对列表进行操作

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-10-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据架构师专家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档