• python学习笔记——列表


    序列中的列表

    ……

    目录:

    一;概念

    二;列表的创建

    三;列表和矩阵

    四;列表的赋值

    五;与列表相关的函数

    六;列表与字符串的互相操作

    ……

    一;概念

    列表是由一系列按照指定顺序排列的元素组成。列表中的元素可以是不同的类型。

    列表的表示用方括号[]将元素括起来,元素之间用逗号,分隔开。

    列表是序列类型的一种,序列所有的特性和操作对于列表都是成立的,除此之外,列表还有自己的特殊操作。

    ……

    ……

    二;列表的创建

    1;可以直接创建一个空列表a=[]

    2;也可以正常的创建一个列表a=[1,2,3,’w’,’s’]

    3;使用list()将其它类型转化为列表,比如将字符串转化为列表:

    s='hello'

    l=list(s)

    print(l)

    会输出:

    ['h', 'e', 'l', 'l', 'o']

    还可以将使用进行这样一个操作:

    a=range(10)

    l=list(a)

    print(l)

    会输出:

    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    总的来说,用list()函数进行初始化列表,还是挺好用的。

    ……

    ……

    三;列表和矩阵

    列表中的元素类型可以是任何类型,列表中自然也可以包含列表。而且还可以对列表中的列表进行访问。

    比如这样一个程序:

    a=[[1,2,3],

    [4,5,6],

    [7,8,9]]

    print(a[2][2])

    会输出:

    9

    实际上,a相当于是一个3*3的矩阵,而a[2][2]相当于是访问到了第三行第三列位置的元素。(因为下标是从0开始的,而矩阵的行和列是从1开始的,所以a[0][0]实际上是指矩阵的第一行第一列,以此类推)

    ……

    ……

    四;列表的赋值

    1;列表中元素的赋值,比如a[1]=2,其实就是将a列表中下标为1的元素赋值成2。(字符串无法进行这种操作,但是列表可以)

    2;删除列表中的元素。比如del a[1],其实就是删除了a列表中下标为1的元素。

    3;列表的赋值,用切片的方法进行赋值,这个之前在讲序列的时候讲过了。

    ……

    ……

    五;与列表相关的函数

     

    ……

    1;append()函数

    append()函数可以在列表尾部增加一个元素。(注意:只增加一个元素)

    比如:

    a=[1,2,3,3,'22']

    a.append(1)

    print(a)

    会输出:

    [1, 2, 3, 3, '22', 1]

    a列表的尾部就增加了一个1,不能写成a.append(1,2),这样写是错误的,因为这个函数只能给列表的尾部增加一个元素。

    ……

    2;extend()函数

    前面说了,append()函数只能在列表尾部增加一个元素,要想增加多个元素的话,就用extend()函数。(吐槽一句:python的各种库和函数是真的多,不过正因为有这么多库和函数,python的使用才会更加简便和灵活……)

    比如:

    a=[1,2,3,3,'22']

    a.extend([1,2])

    print(a)

    会输出:

    [1, 2, 3, 3, '22', 1, 2]

    用extend()函数,就成功的在列表尾部增加了两个元素,当然,还可以增加更多个元素。

    ……

    3;insert()函数

    insert()函数和append()函数有点像,但不同的是,insert()函数的功能更加强大,可以将一个元素插入到列表中的任何一个位置。

    比如:

    a=[1,2,3,3,'22']

    a.insert(0,2)

    print(a)

    会输出:

    [2, 1, 2, 3, 3, '22']

    a.insert(0,2)的意思其实就是将原本下标为0的元素往后推了一位,而让2来占据下标0这个位置。格式:a.insert(下标,元素)

    如果输入了一个没办法找到的下标会怎么样呢?

    比如a.insert(100,2),我要将2塞进列表中下标为100的位置,可是a列表没有这么多下标……所以这个时候,2会自动塞到列表的尾部,其作用就和append()函数一模一样了。

    ……

    4;remove()函数

    remove()和上面讲的del删除元素的方法有点类似,不过del是找寻下标然后删除,而remove()是寻找元素删除,而且删除的是第一次出现的元素。

    比如:

    a=[1,3,2,3,'22']

    a.remove(3)

    print(a)

    会输出:

    [1, 2, 3, '22']

    可以看到,remove()函数把第一个3给删除了,然后还有一个3没有删除,这其实就是remove()函数的用法。

    ……

    5;pop()函数

    pop()函数和del删除元素的方法几乎一样。唯一不同的就是pop()函数会返回被删除的元素。

    比如:

    a=[1,3,2,3,'22']

    print(a.pop(0))

    print(a)

    会输出:

    1

    [3, 2, 3, '22']

    可以看出,1其实就是被pop()函数删除的那个值,如果不想返回值的话,直接这样写也是可以的:

    a=[1,3,2,3,'22']

    a.pop(0)

    print(a)

    如果是这样写的话,那pop()函数的功能就和del一模一样了。

    ……

    6;reverse()函数

    reverse()函数的作用,说白了就是将元素的位置进行一个颠倒,用起来确实很方便。比如:

    a=[1,3,2,3,'22']

    a.reverse()

    print(a)

    会输出:

    ['22', 3, 2, 3, 1]

    可以看到,结果列表和原列表是颠倒的。c语言也可以做到类似颠倒的事情,但却要用到数组和循环才能搞定,而Python一个函数就搞定了。

    ……

    7;index()函数

    index()函数是一个查找函数,查找列表中第一次出现的元素的下标位置。

    比如:

    a=[1,3,2,3,'22']

    print(a.index(3))

    会输出:

    1

    观察可发现,a列表中的3第一次出现的下标位置,正是1,所以使用index()函数会输出1。

    ……

    ……

    六;列表与字符串的互相操作

    1;split()函数

    使用split()函数,可以将字符串切割成列表。

    比如:

    s='he0she0it0they0'

    a=s.split('0')

    print(a)

    会输出:

    ['he', 'she', 'it', 'they', '']

    可以看到,split()函数以0为分割线,把字符串给分割成了五个部分。

    当然,还可以用其它的字符来作为分割线,这里我只是用了‘0’这个字符而已。

    如果split()函数内没有参数的话,那么会以空格作为分割线。

    ……

    2;join()函数

    上面的split()函数是将字符串转变成列表,而join()函数则是将列表转换成字符。

    比如:

    a=['he','is','a','good','boy']

    print(' '.join(a))

    会输出:

    he is a good boy

    这是将列表中的元素合并成了字符串,还可以修改print()中’’的参数,对字符串进行一个不同的输出。

    比如:

    a=['he','is','a','good','boy']

    print('/'.join(a))

    会输出:

    he/is/a/good/boy

    ……

    ……

  • 相关阅读:
    SSM+基于ssm的汽车租赁平台的设计与实现 毕业设计-附源码211708
    Scrum敏捷开发如何实施
    Redis学习笔记14:基于spring data redis及lua脚本ZSET有序集合实现环形结构案例及lua脚本如何发送到redis服务器
    基于Java+SpringBoot+Vue前后端分离毕业设计系统设计和实现
    软考考完后,你是否有这些疑问?
    【虹科干货】Redis Enterprise vs ElastiCache——如何选择缓存解决方案?
    蓝牙耳机哪个牌子性价比高?千元内真无线耳机推荐
    MTK安卓开发板_联发科开发板评估套件_安卓主板硬件开发
    车载SOA测试利器——Parasoft SOA自动化测试方案
    泛型学习笔记
  • 原文地址:https://blog.csdn.net/oyqho/article/details/127728808