专栏首页Python爬虫实战Python数据类型之元组

Python数据类型之元组

元组:一个有限制的列表

元组和列表有一个很重要的区别,那就是元组是不可改变的,定义了元组里面的元素就不能随便改动了。 由于和列表是近亲关系,所以元组和列表在实际使用上是非常相似的。

这篇文章主要通过讨论元组和列表到底有什么不同来学习元组,酱紫大家就不会觉得老是重复一样的内容。我们主要从以下几个点来讨论学习:

1.创建和访问一个元组

创建列表的时候,用的是[]中括号,而我们创建元组大部分使用的是()小括号:

这样就成功创建一个元组了,而访问元组的方式和访问列表的方法是非常相似的:

可以看出,同样可以用下标的方式来访问元组。同理,也可以用切片的方式访问,要不然怎么叫两兄弟呢!

我们在一开始的时候说了元组不能被修改,那么如果试图去修改一个元组的话程序会向我们抛出错误:

如图所示,程序告诉我们,元组这个类型是不可以被修改的

现在,我们一开始说了,元组大部分时候是用()小括号表示,为什么用大部分这个词语呢,大家知道元组的标志性符号是什么吗,相信很多同学直接说小括号,我们在这里先实验一下:

可以看出,就算小括号里面有元素,类型依旧是整型,而我们从temp1中可以发现,就算没有小括号,依旧是元组类型,由此以知道,逗号才是关键 。

如果要创建一个空列表的话,只需要使用空的中括号即可,创建一个空元组,也是只需要用空的小括号即可,就正如temp = ()这样即可。

如果要创建的元组里面只有一个元素,就如temp = (1,) 这样,请在元素后头加上一个逗号,以确保它是一个元组。其实,不加小括号也是可以的,像这样 temp = 1,这样也是一个元组,这就是为什么一开始说元组大部分使用小括号的原因了。

为了证明逗号的决定性作用,再举一个栗子:

如图所示,在没有逗号的时候,*符号真的就是乘号了,而如果加了逗号的时候,那么*符号就变成了我们之前列表里所说的重复操作符这样了。

2. 更新和删除一个元组

我们不是已经说过元组是不能修改吗,怎么还谈这样的东西,虽然不能直接更新和删除,但是我们可以通过一些小手段:

如图所示,我们要将黄昏插入到元组内,实际上,我们是将元组切成了2部分,将要插入的元素放到我们切开的部分里,然后再将3部分连接组合在一起。

在列表的时候,要删除一个元素有三种方法,但是对于元组来说是没有这样的方法的,如果要删除一个元素,我们可以用上面那样的方法,利用切片的方式来间接删除元素。

最后,我们总结一下哪些操作符可以用在元组身上:

  • 拼接操作符(+)
  • 重复操作符(*)
  • 逻辑操作符(and or ..)
  • 成员操作符(in , not in)
  • 比较操作符(>,<,=….)

推荐阅读:

  • Python数据类型之数字类型
  • Python数据类型之字符串
  • Python数据类型之列表
  • Python数据类型之列表(后续)----

本文分享自微信公众号 - C与Python实战(CPythonPractice),作者:小龙

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-04-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python指南:组合数据类型

    Python提供了5中内置的序列类型:bytearray、bytes、list、str与tuple,序列类型支持成员关系操作符(in)、大小计算函数(len()...

    王强
  • Python数据类型之列表(后续)

    如图所示,有list1和list2两个列表,我们可以发现,原来列表竟然可以比较大小,在这里肯定有读者会说,123肯定小于234,但是如果我们往列表里面多添加几个...

    王强
  • Python数据类型之列表

    定义一个列表的基本方式用中括号[],这也是列表的一个标志性符号,如果创建一个数字列表就是这样[1,2,3,4,5,6],记得中间用逗号隔开,而我们也可以用我们熟...

    王强
  • Python基础之元组

    在ipython交互式下,新建一个元组empty_tuple;empty_tuple. 按一下tab键,即可查看元组函数

    py3study
  • Python基础知识: 元组

    tup1 = ('physics', 'chemistry', 1997, 2000); tup2 = (1, 2, 3, 4, 5 ); tup3 = "a"...

    py3study
  • 快速学习-Python元组

    cwl_java
  • Python元组与列表的相同点与区别

    列表和元组都属于有序序列,支持使用双向索引访问其中的元素、使用内置函数len()统计元素个数、使用运算符in测试是否包含某个元素、使用count()方法统计指定...

    Python小屋屋主
  • python入门(四)

          range(starti  stop step)         2.7版本

    py3study
  • python学习之元组

    1.元组和列表的区别 元组和列表的相同点就是都是序列类型的容器对象,可以存放任何类型的数据,支持切片,迭代操作等; 元组和列表的不同点是元组是不可变类型,大小固...

    py3study
  • 互联网家装里的“令狐冲”与“东方不败”

    互联网家装的江湖里总是不缺少让我们去细细品味的话题,不管是那些看似荒唐的所谓的新概念,还是那些在家装行业的摸爬滚打中继续前行的人们都让这个看似有些传统的行业焕发...

    孟永辉

扫码关注云+社区

领取腾讯云代金券