zoukankan      html  css  js  c++  java
  • Python之元组

    对于容器型数据类型list,无论谁都可以对其增删改查,那么有一些重要的数据放在list中是不安全的,所以需要一种容器类的数据类型存放重要的数据,创建之初只能查看而不能增删改,这种数据类型就是元组。元组和列表相似,元组使用括号,元组的值一旦初始化便不能进行修改。

    1.1初始元组

    t = ('a', 'b', 'c', 1, 2, 3)
    print(t)
    print(type(t))

    注:定义只含有一个元素的元组时,需要在元素后面添加一个逗号,tuples=(1,),以免产生歧义。

    1.2获取数据

    获取数据,在获取数据时与列表完全相同

    tuples = ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu', 'wanglaoliu', 'yanlaoqi')
    print(tuples[0]) # zhangsan,打印第0位置的值
    print(tuples[-1]) # yanlaoqi,打印最后一个元素的值
    print(tuples[-2:]) # ('wanglaoliu', 'yanlaoqi'),打印最后两个元素的值
    print(tuples[:-2]) # ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu'),打印第0索引位置的值到倒数第2个元素的值(不包括倒数第2个元素的值)
    print(tuples[:]) # ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu', 'wanglaoliu', 'yanlaoqi'),打印所有的值

    1.3修改元组

    # 元组在创建后内容不可变
    # t[0] = 2
    # 写入数据的函数同样不被支持
    # t.insert('f')

    元组中的元组的值虽然不允许修改,但是可以把元组进行连接组合:

    tu1 = ('huashan','songshan')
    tu2 = ('taishan',)
    tu3 = tu1 + tu2
    print(tu3) # ('huashan', 'songshan', 'taishan')

    注:如果元组内持有列表,那么列表的内容是允许被修改的。

    tuples = (1, 2, 3, [4, 5, 6])
    tuples[3][1] = 11
    print(tuples) # (1, 2, 3, [4, 11, 6])

    1.4删除元组

    元组中的元素虽然不可以进行修改,但是可以把整个元组删除掉:

    tuples = ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu', 'wanglaoliu', 'yanlaoqi')
    del tuples
    print(tuples) # NameError: name 'tuples' is not defined

    1.5循环遍历

    在Python中,可以使用for循环遍历所有非数字类型的变量:列表、元组、字典以及字符串。但是在实际开发中,除非能够确认元组中的数据类型,否则针对元组的循环遍历需求并不是很多。

    names = ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu', 'wanglaoliu', 'yanlaoqi')
    for name in names:
    print(name)

    1.6元组的应用场景

    在实际开发中,元组的应用场景为:

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

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

      3)重要数据,用户名,密码,个人信息,不想让别人改动的一些数据,存在元组中。

      4)元组的拆包。分别赋值。

    a, b = (1, 2) # 多一个少一个都不行
    print(a,b)
    c = (1,2)
    a,b = c
    print(a,b)
    info_tuple = (18, 175, 75.50)
    # 格式化字符串后面的'()'本质上就是元组
    print("小明的年龄%s,身高%s,体重%.2f" % info_tuple) # 小明的年龄18,身高175,体重75.50

    1.7元组和列表之间的转换

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

    1.8列表与元组的区别与应用场景

    1.9元组常用方法

    tuples = ('zhangsan', 'lisi', 'bo xiao yuan', 'zhaolaowu', 'wanglaoliu', 'yanlaoqi', 'lisi')
    print(tuples.index('wanglaoliu')) #,4,返回指定值的索引
    print(tuples.count('lisi')) # 2,返回指定值出现的次数
    print(max(tuples)) # zhaolaowu,返回元组的最大值
    print(min(tuples)) # bo xiao yuan,返回元组的最小值
    print(len(tuples)) # 7,返回元组的长度
  • 相关阅读:
    (转)simhash进行文本查重
    项目团队管理随记
    最常见到的runtime exception 异常
    javascript判断嵌套对象属性是否存在
    vim高清大图赏析(附常用快捷键)
    如何避免系统发送垃圾邮件
    使用javascript将数字转化为金额
    分享一个音乐电台(好看的 ui + html5)
    测试代码高亮显示
    Cadence 操作技巧总结1:测试点的生成2
  • 原文地址:https://www.cnblogs.com/zhuzhaoli/p/10855081.html
Copyright © 2011-2022 走看看