查看原文
其他

给妹子讲python-S01E03元组的使用

酱油哥 Python爱好者社区 2019-04-07

作者:酱油哥       《给妹子讲python》专栏作者
公众号: python数据科学家 / 清华程序猿
知乎专栏:
https://zhuanlan.zhihu.com/c_147297848



前文传送门:

  给妹子讲python-S01E01好用的列表

  给妹子讲python-S01E02学会用字典

【要点抢先看】

1.元组是不可变的列表
2.元组的访问和元素的获取
3.基于位置偏移的索引和分片操作与列表相同
4.如何对不可变的元组进行排序

【妹子说】今天这一集,我们来学学容器这一部分的最后一块内容,元组吧~

元组很简单,核心就是一句话:可以看作是不可变的列表

T = (1,2,3,4)
M = ('spam', 3.0, [11,22,33])
print(T[1])
print(M[2][0])

2
11

元组有一种特殊的方法,可以一次性获取元组中的所有项

a,b = (1,2)
print('a={},b={}'.format(a,b))

a=1,b=2

他也可以和其他元组进行连接操作

T1 = (1,2,3,4)
T2 = (5,6,7,8)
print(T1 + T2)

(1, 2, 3, 4, 5, 6, 7, 8)

基于位置偏移的操作如索引和分片,元组和列表的用法完全一样。他和列表的关键区别在于他的不可变性,这有利于保持数据的完整性。

至于说元组的排序,由于其不可变性,所以就地排序肯定是不行的.

元组排序的一种方法是先将其转化为列表,本地排序后再转化回元组

T = ('cc','bb','dd','aa')
tmp = list(T)
tmp.sort()
T = tuple(tmp)
print(T)

('aa', 'bb', 'cc', 'dd')

或者用内置sorted方法,传入一个元组,返回一个已经排好序的list序列

T = ('cc','bb','dd','aa')
print(sorted(T))

['aa', 'bb', 'cc', 'dd']

元组不难,主要内容就讲这么多了。

【妹子说】和前面两集相比,元组的内容确实轻松不少。这样,基本的容器知识我们就学完啦,那后续我们继续学习新的内容吧~

Python爱好者社区历史文章大合集

Python爱好者社区历史文章列表(每周append更新一次)

福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“课程”即可获取:

小编的Python入门免费视频课程!!!

【最新免费微课】小编的Python快速上手matplotlib可视化库!!!

崔老师爬虫实战案例免费学习视频。

陈老师数据分析报告制作免费学习视频。

玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存