• Python中的元组


    学完元组就相当于Java的

    1 元组的定义

    • Tuple(元组)与列表类似,不同之处在于元组的 元素不能修改

      • 元组 表示多个元素组成的序列

      • 元组Python 开发中,有特定的应用场景

    • 用于存储 一串 信息数据 之间使用 , 分隔

    • 元组用 () 定义

    • 元组的 索引0 开始

      • 索引 就是数据在 元组 中的位置编号

    info_tuple = ("zhangsan", 18, 1.75)

    创建空元组

    info_tuple = ()

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

    info_tuple = (50, )

    2 元组常用操作

    • ipython3 中定义一个 元组,例如:info = ()

    • 输入 info. 按下 TAB 键,ipython 会提示 元组 能够使用的函数如下:

    info.count  info.index

    有关 元组常用操作 可以参照上图练习

    3 循环遍历

    • 取值 就是从 元组 中获取存储在指定位置的数据

    • 遍历 就是 从头到尾 依次元组 中获取数据

    # for 循环内部使用的变量 in 元组
    for item in info:
    # 循环内部针对元组元素进行操作
    print(item)
    • Python 中,可以使用 for 循环遍历所有非数字型类型的变量:列表元组字典 以及 字符串

    • 提示:在实际开发中,除非 能够确认元组中的数据类型,否则针对元组的循环遍历需求并不是很多

    4 应用场景

    • 尽管可以使用 for in 遍历 元组

    • 但是在开发中,更多的应用场景是:

      • 函数的 参数 和 返回值,一个函数可以接收 任意多个参数,或者 一次返回多个数据

        • 有关 函数的参数 和 返回值,在后续 函数高级 给大家介绍

      • 格式字符串,格式化字符串后面的 () 本质上就是一个元组

      • 让列表不可以被修改,以保护数据安全

    info = ("zhangsan", 18)
    print("%s 的年龄是 %d" % info)

    元组和列表之间的转换

    • 使用 list 函数可以把元组转换成列表

    list(元组) 
    • 使用 tuple 函数可以把列表转换成元组

    tuple(列表)

     

    元组内置函数

    Python元组包含了以下内置函数

    序号方法及描述实例
    1 len(tuple)
    计算元组元素个数。
    >>> tuple1 = ('Google', 'Runoob', 'Taobao')
    >>> len(tuple1)
    3
    >>>
    2 max(tuple)
    返回元组中元素最大值。
    >>> tuple2 = ('5', '4', '8')
    >>> max(tuple2)
    '8'
    >>>
    3 min(tuple)
    返回元组中元素最小值。
    >>> tuple2 = ('5', '4', '8')
    >>> min(tuple2)
    '4'
    >>>
    4 tuple(seq)
    将列表转换为元组。
    >>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu']
    >>> tuple1=tuple(list1)
    >>> tuple1
    ('Google', 'Taobao', 'Runoob', 'Baidu'

    下面为测试的代码,感觉Python的解包还是挺方便的

    # 元组 tuple
    # 元组是一个不可变的序列
    # 它的操作的方式基本上和列表是一致的
    # 所以你在操作元组时,就把元组当成是一个不可变的列表就ok了
    # 一般当我们希望数据不改变时,就使用元组,其余情况都使用列表
    
    # 创建元组
    # 使用()来创建元组
    my_tuple = ()  # 创建了一个空元组
    # print(my_tuple,type(my_tuple)) # <class 'tuple'>
    
    my_tuple = (1, 2, 3, 4, 5)  # 创建了一个5个元素的元组
    # 元组是不可变对象,不能尝试为元组中的元素重新赋值
    # my_tuple[3] = 10 TypeError: 'tuple' object does not support item assignment
    # print(my_tuple[3])
    
    # 当元组不是空元组时,括号可以省略
    # 如果元组不是空元组,它里边至少要有一个,
    my_tuple = 10, 20, 30, 40
    my_tuple = 40,
    # print(my_tuple , type(my_tuple))
    
    my_tuple = 10, 20, 30, 40
    
    # 元组的解包(解构)
    # 解包指就是将元组当中每一个元素都赋值给一个变量
    a, b, c, d = my_tuple
    
    # print("a =",a)
    # print("b =",b)
    # print("c =",c)
    # print("d =",d)
    
    a = 100
    b = 300
    # print(a , b)
    
    # 交互a 和 b的值,这时我们就可以利用元组的解包
    a, b = b, a
    
    # print(a , b)
    my_tuple = 10, 20, 30, 40
    
    # 在对一个元组进行解包时,变量的数量必须和元组中的元素的数量一致
    # 也可以在变量前边添加一个*,这样变量将会获取元组中所有剩余的元素
    a, b, *c = my_tuple
    a, *b, c = my_tuple
    *a, b, c = my_tuple
    a, b, *c = [1, 2, 3, 4, 5, 6, 7]
    a, b, *c = 'hello world'
    # 不能同时出现两个或以上的*变量
    # *a , *b , c = my_tuple SyntaxError: two starred expressions in assignment
    print('a =', a)
    print('b =', b)
    print('c =', c)
  • 相关阅读:
    React中jquery引用
    实现table的单线边框的办法
    学习网站
    React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: undefined.
    使用rgba设置输入框背景透明
    转: HTML5之placeholder属性以及如何更改placeholder属性中文字颜色
    转:jquery操作元素的css样式(获取、修改等等)
    购物车抛物线动画效果
    转: jquery.qrcode.js生成二维码插件&转成图片格式
    Chatbot中的填槽(Slot Filling)(转)
  • 原文地址:https://www.cnblogs.com/dalianpai/p/12130150.html
Copyright © 2020-2023  润新知