zoukankan      html  css  js  c++  java
  • 元组类型-课堂笔记

    一:基本使用
    1 用途:元组是不可变的列表,能存多个值,但多个值只有取的需求,而没有改的需求,那么用元组合最合理
    元组是不可变类型
    2 定义方式:在()内用逗号分割开,可以存放任意类型的值
    names=('alex','egon','wxx') #names=tuple(('alex','egon','wxx'))
    print(type(names))
    强调: 当元组内只有一个元素时,务必记住加一个逗号 ***** 切记,不加逗号会默认为括号里的类型。
    x=('egon',)
    print(type(x)) # tuple 不加逗号就是字符串类型

    3 常用操作+内置的方法
    1、按索引取值(正向取+反向取):只能取
    names=('alex','egon','wxx')
    names[0]='sb'


    2、切片(顾头不顾尾,步长)
    names=('alex','egon','wxx','lxx','cxx')
    print(names[1:3]


    3、长度
    names=('alex','egon','wxx','lxx','cxx')
    print(len(names))
    4、成员运算in和not in
    names=('alex','egon','wxx','lxx','cxx')
    print('alex' in names)

    5、循环
    names=('alex','egon','wxx','lxx','cxx')
    for item in names:
    print(item)


    二:该类型总结
    1 存一个值or存多个值
    可以存多个值,值都可以是任意数据类型

    2 有序or无序
    有序
    3 可变or不可变
    不可变

    names=('alex','egon','wxx','lxx','cxx','lxx')
    # del names[0] # 元组是不可变的,不能进行修改
    # names[0]='sb'
    print(names.count('lxx'))
    print(names.index('wxx',0,3))

    names=('alex','egon','wxx','lxx','cxx','lxx') # 我们说的修改是在原数据类型上的修改
    names=1

    l=[1,243,3]
    l=3333
    l=['a','b','c']
    print(id(l[0]))
    l[0]='A'
    print(id(l[0]))

    names=('a','b','c')

    列表可变的底层原理:
    指的是索引所对应的值的内存地址是可以改变的

    元组不可变的底层原理:
    指的是索引所对应的值的内存地址是不可以改变的
    或者反过来说,只要索引对应值的内存地址没有改变,那么元组始终是没有改变的

    t1=(['a','b','c'],'wc','office')

    print(id(t1[0]))
    print(id(t1[1]))
    print(id(t1[2]))

    t1[0][0]='AAAA'
    print(t1)

    print(id(t1[0]))


  • 相关阅读:
    单据体内2个字段比较
    立账模式
    余额
    单据服务校验设置
    值更新事件(触发带基础属性到指定字段)
    重建索引 ,压缩数据库
    数据库自动备份
    BZOJ 4597: [Shoi2016]随机序列 线段树 + 思维
    BZOJ 4399: 魔法少女LJJ 线段树合并 + 对数
    BZOJ 2217: [Poi2011]Lollipop 构造 + 思维
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/9118426.html
Copyright © 2011-2022 走看看