zoukankan      html  css  js  c++  java
  • list和tuple

    1. 列表--list

    列表用[]表示

    l=[1,2,3,'zs']
    print(l)
    输出:[1,2,3,'zs']

    1.利用下标获取列表元素,下标从0开始

    print(l[3])
    输出:zs
    print(l[4])
    越界报错:IndexError: list index out of range

    2.len()函数获取list元素的个数

    print(len(l))
    输出:4

    3.获取倒数第一个数

    print(l[-1))
    输出:zs

    4.向列表中追加元素append()方法

    l.append('ls')
    print(l)
    输出:l=[1,2,3,'zs','ls'

    5.把元素插入到指定的位置,如索引为1的位置

    l.insert(1,'we')
    print(l)
    输出:[1,'we',2,3,'zs']

    6.删除list末尾元素,pop()方法

    print(l.pop())
    输出:zs
    print(l)
    输出:[1,2,3]

    删除指定位置的元素,用pop(i)方法,其中i是索引位置

    print(l.pop(2))
    输出:3
    print(l)
    输出:[1,2,'zs']

    7.元素替换,直接赋值对应的索引就可以。

    l[0]='aq'
    print(l)
    输出:['aq',2,3,'zs']

    8.list嵌套

    a=[4,5,6]
    l=[1,2,3,a,'zs']
    print(l)
    输出:[1,2,3,4,5,6,'zs']

    可把嵌套后的列表当成二维数组,例如:访问a列表中的5元素。

    print(l[3][1])
    输出:5

    9.获取指定元素的下标位置,例如l列表中2的下标位置为1。

    print(l.index(2))
    输出:1

    2.元组

    元组用()表示

    t=(1,2,7,'df')
    print(t)
    输出:(1, 2, 7, 'df')

    1.获取元组中的元素

    print(t[3])
    输出:df

    2.元组中的值不能修改

    t[3]='4'
    报错:TypeError: 'tuple' object does not support item assignment

    3.定义空的tuple

    a=()
    print(a)
    输出:()

    4.定义只有一个元素的tuple要加逗号,否则会和数学中的()产生歧义

    t=(3,)
    a=(3)
    print(type(t))
    print(type(a)
    输出:<class 'tuple'>
         <class 'int'>

    注意到t的类型是元组,而a的类型是int

    5.如果元组的中嵌套一个列表,那么元组里列表的元素是可变的。

    t=(1,2,['sda','as'],7)
    t[2][0]='张三'
    print(t)
    输出:(1, 2, ['张三', 'as'], 7)

    6.获取指定元素的索引

    print(t.index(2))
    输出:1

    3.切片操作

    l=['asd','sd','xa']
    r=[]
    n=3
    for i in range(n):
        r.append(l[i])
    print(r)
    输出:['asd', 'sd', 'xa']
    
    # l[0:n] 取到0~(n-1)
    print(l[0:3])
    输出:['asd', 'sd', 'xa']
    
    print(l[:3])
    输出:['asd', 'sd', 'xa']
    
    print(l[1:3])
    输出:['sd', 'xa']
    
    # L[-1]取倒数第一个元素,那么它同样支持倒数切片
    print(l[-2:])
    输出:['sd', 'xa']
    
    l=list(range(100))
    
    print(l[0:10])
    输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    print(l[-10:])
    输出:[90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
    
    print(l[11:20])
    输出:[11, 12, 13, 14, 15, 16, 17, 18, 19]
    
    # 前10个数,每两个取一个
    print(l[:10:2])
    输出:[0, 2, 4, 6, 8]
    
    # 所有的数,每10个取一个
    print(l[::10])
    输出:[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
    
    t=(1,2,3,4)
    print(t[:3])
    输出:(1, 2, 3)
    
    a="abcds"
    print(a[::2])
    输出:acs

      

  • 相关阅读:
    python 类定义 继承
    BAYSY2 的LVDS引脚 笔记
    Fedora20-32bit cross-compiling arm-linux-gcc4.3.2
    以冒泡排序为例--malloc/free 重定向stdin stdout
    笔记:程序内存管理 .bss .data .rodata .text stack heap
    第一章 数值和码制
    《将博客搬至CSDN》
    Servlet 3.0 新特性
    java Servlet接口及应用
    C语言输出单个汉字字符
  • 原文地址:https://www.cnblogs.com/my12/p/9298949.html
Copyright © 2011-2022 走看看