• 技术文章 >Python技术 >Python基础教程

    Python基础-列表操作(1):列表基本操作和组织列表

    尤及尤及2020-06-19 17:42:05转载3889

    Python基础-列表(1):

    1、列表的基础操作

    在列表末尾添加元素 insert()

    word = []
    word.append('a')
    word.append('b')
    word.append(2)
    word.append('c')
    print(word)
    打印结果:['a', 'b', 2, 'c']

    请注意:很多操作方法是直接改变列表本身,方法本身不会有返回值,需要仔细留意。

    在列表中插入元素 insert()

    word = ['a','b','c','d']
    word.insert(1,'xxx')
    print(word)
    打印结果:['a', 'xxx', 'b', 'c', 'd']

    删除列表元素 del

    word = ['a','b','c','d']
    del word[1]
    print(word)
    打印结果:['a', 'c', 'd']

    弹出列表元素 pop()

    pop是栈的标准操作,在这里python提供了这一方法,可以弹出列表中的元素,弹出来的元素可以用变量接收,进一步供业务逻辑使用,而原列表的改变与del删除元素相同,默认每次弹出列表末尾的元素。

    word = ['a','b','c','d']
    s = word.pop()
    print(word)
    print(s)
    打印结果:['a', 'b', 'c']d

    你也可以弹出任意位置的元素

    word = ['a','b','c','d']
    s = word.pop(0)
    print(word)
    print(s)
    打印结果:['b', 'c', 'd']a

    python没有提供push方法,但是我们不管是需要先进先出还是先进后出的数据结构,都可以用 insert + append + pop 三个方法进行组合完成。

    根据值删除元素 remove()

    如果你知道要删除的值,但是不知道他的下标,那么可以使用remove方法进行删除

    word = ['a','b','b','c','d']
    word.remove('b')
    print(word)
    打印结果:['a', 'b', 'c', 'd']

    如你所见,remove只能删除第一个值,如果你要删除的值可能在列表中出现多次,那么只能遍历处理。

    获取列表长度 len()

    word = ['a','b','c']
    print(len(word))
    打印结果:3

    元素在列表中出现的次数 count()

    word = ['a','b','b','c','d']
    i = word.count('b')
    print(i)
    打印结果:2

    合并列表 extend()

    word = ['a','b','b','c','d']
    num = [2,3,4]
    word.extend(num)
    print(word)
    打印结果:['a', 'b', 'b', 'c', 'd', 2, 3, 4]

    实际上你也可以直接用加号 将两个列表相加

    word = ['a','b','b','c','d']
    num = [2,3,4]
    all = word + num
    print(all)
    打印结果:['a', 'b', 'b', 'c', 'd', 2, 3, 4]

    不同之处是 一个是在原列表上做扩充,一个是新建一个列表进行装载。

    2、组织列表

    永久性排序 sort()

    正序:

    word = ['e','b','a','c','d']
    word.sort()
    print(word)
    打印结果:['a', 'b', 'c', 'd', 'e']

    倒序:

    word = ['e','b','a','c','d']
    word.sort(reverse=True)
    print(word)
    打印结果:['e', 'd', 'c', 'b', 'a']

    临时性排序 sorted()

    临时性排序不会改变原来的列表,而是sorted方法会返回一个排序后的结果列表。

    word = ['e','b','a','c','d']
    print(sorted(word))
    打印结果:['a', 'b', 'c', 'd', 'e']

    同样的 倒序也是加上reverse参数:

    word = ['e','b','a','c','d']
    print(sorted(word,reverse=True))
    打印结果:['e', 'd', 'c', 'b', 'a']

    实际上sorted可以传入任何序列,但它总是返回一个列表.

    如下演示将一个字符串进行排序

    word = 'ebdcgaf'
    lis = sorted(word)
    print(lis)
    print(''.join(lis))
    打印结果:['a', 'b', 'c', 'd', 'e', 'f', 'g']abcdefg

    反转列表 reverse()

    反转列表与排序无关,仅仅是将列表元素反向排列。

    word = ['e','b','a','c','d']
    word.reverse()
    打印结果:['d', 'c', 'a', 'b', 'e']

    那如果想要恢复列表怎么办呢? 那就把反转之后的列表再反转,也就恢复了。

    想了解更多python知识,请观看Python基础(周莫烦)视频!!

    专题推荐:python
    上一篇:python中音频图像识别和网页相关的库合集! 下一篇:Python基础-列表操作(2):列表的遍历和数字列表

    相关文章推荐

    • python列表怎么查找?• python列表中可以用中文字吗?• python列表无法显示汉字怎么解决?• python列表如何不重复• python列表知道下标怎么取值

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网