Python数据类型详解(三)元祖:tuple


Posted in Python onMay 08, 2016

一.基本数据类型

整数:int

字符串:str(注:\t等于一个tab键)

布尔值: bool

列表:list

列表用[]

元祖:tuple

元祖用()

字典:dict
注:所有的数据类型都存在想对应的类列里,元祖和列表功能一样,列表可以修改,元祖不能修改。

二.列表所有数据类型:

基本操作:

索引,切片,长度,包含,循环

class tuple(object):
  """
  tuple() -> empty tuple
  tuple(iterable) -> tuple initialized from iterable's items
  
  If the argument is a tuple, the return value is the same object.
  """
  def count(self, value): # real signature unknown; restored from __doc__
    """ T.count(value) -> integer -- return number of occurrences of value """
    (T.count(价值)- >整数,返回值的出现次数)
    return 0

  def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
    """
    T.index(value, [start, [stop]]) -> integer -- return first index of value.
    Raises ValueError if the value is not present.
    """
    (T。指数(价值,[开始,[不要]])- >整数,返回第一索引值。提出了ValueError如果不存在的价值。)
    return 0

  def __add__(self, *args, **kwargs): # real signature unknown
    """ Return self+value. """
    pass

  def __contains__(self, *args, **kwargs): # real signature unknown
    """ Return key in self. """
    pass

  def __eq__(self, *args, **kwargs): # real signature unknown
    """ Return self==value. """
    pass

  def __getattribute__(self, *args, **kwargs): # real signature unknown
    """ Return getattr(self, name). """
    pass

  def __getitem__(self, *args, **kwargs): # real signature unknown
    """ Return self[key]. """
    pass

  def __getnewargs__(self, *args, **kwargs): # real signature unknown
    pass

  def __ge__(self, *args, **kwargs): # real signature unknown
    """ Return self>=value. """
    pass

  def __gt__(self, *args, **kwargs): # real signature unknown
    """ Return self>value. """
    pass

  def __hash__(self, *args, **kwargs): # real signature unknown
    """ Return hash(self). """
    pass

  def __init__(self, seq=()): # known special case of tuple.__init__
    """
    tuple() -> empty tuple
    tuple(iterable) -> tuple initialized from iterable's items
    
    If the argument is a tuple, the return value is the same object.
    # (copied from class doc)
    """
    pass

  def __iter__(self, *args, **kwargs): # real signature unknown
    """ Implement iter(self). """
    pass

  def __len__(self, *args, **kwargs): # real signature unknown
    """ Return len(self). """
    pass

  def __le__(self, *args, **kwargs): # real signature unknown
    """ Return self<=value. """
    pass

  def __lt__(self, *args, **kwargs): # real signature unknown
    """ Return self<value. """
    pass

  def __mul__(self, *args, **kwargs): # real signature unknown
    """ Return self*value.n """
    pass

  @staticmethod # known case of __new__
  def __new__(*args, **kwargs): # real signature unknown
    """ Create and return a new object. See help(type) for accurate signature. """
    pass

  def __ne__(self, *args, **kwargs): # real signature unknown
    """ Return self!=value. """
    pass

  def __repr__(self, *args, **kwargs): # real signature unknown
    """ Return repr(self). """
    pass

  def __rmul__(self, *args, **kwargs): # real signature unknown
    """ Return self*value. """
    pass

三.所有元祖数据类型举例

#count 用于计算元素出现的个数
name_tuple = ("zhangyanlin","suoning","nick")
print(name_tuple.count('zhangyanlin'))
 
#index获取指定元素的指定位置
name_tuple = ("zhangyanlin","suoning","nick")
print(name_tuple.index('zhangyanlin'))

四.索引

name_tuple = ("zhangyanlin","suoning","nick")
print(name_tuple[1])

五.切片

#取出第一位到最后一位减1的元素
name_tuple = ("zhangyanlin","suoning","nick")
print(name_tuple[0:len(name_tuple)-1])

六.总长度len

#取出最后一位减1的元素
name_tuple = ("zhangyanlin","suoning","nick")
print(name_tuple[len(name_tuple)-1])

七.for循环

name_tuple = ("zhangyanlin","suoning","nick")
for i in name_tuple:
  print(i)

那么使用 tuple 有什么好处呢?

Tuple 比 list 操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用 tuple 代替 list。
如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用 tuple 而不是 list 如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行 tuple 到 list 的转换 (需要使用一个特殊的函数)。

还记得我说过 dictionary keys 可以是字符串,整数和 “其它几种类型”吗?Tuples 就是这些类型之一。Tuples 可以在 dictionary 中被用做 key,但是 list 不行。实际上,事情要比这更复杂。Dictionary key 必须是不可变的。Tuple 本身是不可改变的,但是如果您有一个 list 的 tuple,那就认为是可变的了,用做 dictionary key 就是不安全的。只有字符串、整数或其它对 dictionary 安全的 tuple 才可以用作 dictionary key。

Tuples 可以用在字符串格式化中,我们会很快看到。

Python 相关文章推荐
python单元测试unittest实例详解
May 11 Python
详解如何利用Cython为Python代码加速
Jan 27 Python
python保存数据到本地文件的方法
Jun 23 Python
啥是佩奇?使用Python自动绘画小猪佩奇的代码实例
Feb 20 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
python中的selenium安装的步骤(浏览器自动化测试框架)
Mar 17 Python
Pyspark获取并处理RDD数据代码实例
Mar 27 Python
django序列化时使用外键的真实值操作
Jul 15 Python
Django启动时找不到mysqlclient问题解决方案
Nov 11 Python
Anaconda详细安装步骤图文教程
Nov 12 Python
python与idea的集成的实现
Nov 20 Python
python中的时区问题
Jan 14 Python
Python数据类型详解(二)列表
May 08 #Python
Python数据类型详解(一)字符串
May 08 #Python
Python常用知识点汇总
May 08 #Python
Python对list列表结构中的值进行去重的方法总结
May 07 #Python
Python环境下安装使用异步任务队列包Celery的基础教程
May 07 #Python
Python编写电话薄实现增删改查功能
May 07 #Python
Python的dict字典结构操作方法学习笔记
May 07 #Python
You might like
php输出表格的实现代码(修正版)
2010/12/29 PHP
PHP静态文件生成类实例
2014/11/29 PHP
PHP实现的进度条效果详解
2016/05/03 PHP
使用jquery给input和textarea设定ie中的focus
2008/05/29 Javascript
ajax的hide隐藏问题解决方法
2012/12/11 Javascript
JQuery查找DOM节点的方法
2015/06/11 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
2016/03/31 Javascript
详解React-Todos入门例子
2016/11/08 Javascript
vue.js实现表格合并示例代码
2016/11/30 Javascript
详解使用grunt完成requirejs的合并压缩和js文件的版本控制
2017/03/02 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
Vuex 使用 v-model 配合 state的方法
2018/11/13 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
vue-cli基础配置及webpack配置修改的完整步骤
2019/10/20 Javascript
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
Python中处理时间的几种方法小结
2015/04/09 Python
python实现统计代码行数的方法
2015/05/22 Python
Python读写txt文本文件的操作方法全解析
2016/06/26 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
2017/07/10 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
python变量赋值方法(可变与不可变)
2019/01/12 Python
这可能是最好玩的python GUI入门实例(推荐)
2019/07/19 Python
cProfile Python性能分析工具使用详解
2019/07/22 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
python接口调用已训练好的caffe模型测试分类方法
2019/08/26 Python
python 生成器和迭代器的原理解析
2019/10/12 Python
收藏!10个免费高清视频素材网站!【设计、视频剪辑必备】
2021/03/18 杂记
CSS3盒子模型详解
2013/04/24 HTML / CSS
html5服务器推送_动力节点Java学院整理
2017/07/12 HTML / CSS
大学生村官个人总结
2015/02/15 职场文书
企业爱心捐款倡议书
2015/04/27 职场文书
科学家测试在太空中培育人造肉,用于未来太空旅行
2022/04/29 数码科技
MySQL 计算连续登录天数
2022/05/11 MySQL