美文网首页
day06-python中的列表和元祖

day06-python中的列表和元祖

作者: d4lx | 来源:发表于2018-08-27 20:43 被阅读0次

    一、list(列表)

    1.列表是python中的容器类型。有序的,可变的容器。(可变指的是列表中的元素和元素的位置、个数可变)
    格式:列表名 = [元素1,元素2,...];注意:空列表为[];
    有序:可以通过下标来获取元素;
    可变:可以进行增删改(查)

    2.元素:指的是列表中的每一个内容。列表中的元素可以是任意类型的数据。

    3.将其他的数据类型转换成列表(只有序列才能转换成列表:字符串、range()、元祖、字典、集合、生成式和迭代器)

    chars = list('abcdefg')
    print(chars)
    numbers = list(range(10))
    print(numbers)
    

    二、列表的增删改查操作

    1、查:获取列表元素
    a.获取单个元素:列表[下标]
    下标范围:0~(元素个数-1) 或者-1~(-元素个数);
    注意:下标不能越界
    b.获取部分元素(切片):列表[下标1:下标2:步进]
    从下标1开始获取下标2前为止(注意:下标2对应的值是取不到的)
    步进值是正的就从前往后取,步进是负的就从后往前取;
    注意:结果还是列表
    c.遍历(一个一个的获取每个元素)
    格式:for x in 列表:

    2、改
    格式:列表名[下标] = 新值(通过下标获取元素,然后重新赋值)

    3、增(增加列表的元素,添加元素)
    注意:增加了列表元素后,列表会重新分配下标。
    a).列表.append(元素)
    b).列表.insert(下标,元素):在指定的下标前插入一个元素

    4、删除列表中元素
    a).del 列表[下标]:根据下标删除列表中的元素
    del语句是python中删除数据的语法,它可以删除任何内容:del 变量(删除变量);del 列表(删除列表)
    b).列表.remove(元素):删除列表中的某个值
    注意:如果这个元素在列表中有多个,只会删除最前面的一个。
    c).列表.pop(下标):将列表中指定下标对应的元素取出来

    练习:

    #练习:将一个保存成绩的列表中,将成绩低于60的全部删除
    #[78,59,40,90,89,45,69,30]
    scores = [78, 59, 40, 90, 89, 45, 69, 30]
    for x in scores[:]:
        if x < 60:
            scores.remove(x)
    print(scores)
    #注意:以后遍历列表的元素时,我们一般遍历他的拷贝值。([:])
    

    三、列表中的数据存储方式

    在python中,数据的存储会根据数据类型的不同,来使用不同的方式存值;
    值类型:变量存数据是直接存值。
    引用类型:变量存数据时,存的是数据在内存中的地址。

    四、列表的相关运算

    1、+操作:
    格式:列表1+列表2:将列表1中的元素和列表2中的元素依次合并。产生一个新的列表;
    2、*操作
    格式:列表1*N:将列表1中元素重复n次,产生一个新的列表;
    3、in 和not in
    元素 in 列表:判断一个元素是否在列表中
    4、求列表的长度
    格式:len(序列)
    5、相关方法
    1)、列表.count(元素):统计指定元素在指定列表中出现的次数
    2)、列表.extend(序列):将序列中的元素添加到列表中
    3)、列表.index(元素):获取指定元素对应的第一个下标
    4)、列表.pop():将列表中的最后一个元素从列表中取出来。
    5)、列表.reverse()反序
    6)、列表.sort:对列表元素进行排序;,默认是升序;列表.sort(reverse = True)进行降序排序
    7)、列表.clear():将列表中元素全部清除
    8)、列表.copy():将列表中的元素全部拷贝,产生一个新的列表;
    注意:这个拷贝是浅拷贝

    浅拷贝和深拷贝:
    浅拷贝:只是单纯的将值拷贝,(如果是对象就直接拷贝对象的地址)
    深拷贝:会拷贝对象的地址所对应的值,产生一个新的地址,然后将新的地址进行赋值;

    五、元祖(Tuple)

    1、元祖:就是不可变的列表,列表中除了和可变相关的内容之外,其他的全部适用于元祖。因此,元祖不支持增删改的操作。

    格式:
    元祖名 = (元素1,元素2,...)
    注意:如果元祖的元素个数为1,需要在元素后面加逗号;

    t2 = (100,)#表示元祖只有一个元素
    t3 = ()#表示元祖为空
    

    2、元祖的查操作(与列表一样)
    格式:列表[下标]

    3、特殊操作

    point = (100,200,'red')
    print(point[0], point[1])
    
    #通过两个变量来获取元祖;
    x,y,color = point
    print(x,y)
    
    user = ('小吕', 90, 97, 60, '男')
    name,*score,sex =user  #在变量名前加*,可以获取元祖、列表中的一部分值,结果是一个列表。
    print(name,score,sex,)
    
    
    #多个值之间用逗号隔开,对应的数据也是元祖。
    a = 1,2,3,4  #相当于a = (1,2,3,4)
    print(a, type(a))
    
    x,y = 100,200 #相当于x,y=(100,200)
    print(x,y)
    

    结果:


    元祖的特殊格式.png

    相关文章

      网友评论

          本文标题:day06-python中的列表和元祖

          本文链接:https://www.haomeiwen.com/subject/ulotwftx.html