zoukankan      html  css  js  c++  java
  • Python基础之列表

    1.创建列表

      列表是python以及其他语言中最常用的数据结构之一,用中括号包裹着,里面可以放任何数据,每个元素用’,‘隔开。

    1 list_a = [1,2,3,4,5,6]
    2 list_b = [a,b,c,d,e,f]
    3 list_c = [1,2,3,a,b,c]

      遍历range()函数生成列表,此函数生成数值时从0开始,可再for循环中添加限制,从而得到需要的列表。

    1 lis = []
    2 for i in range(5):
    3     lis.append(i)
    4 print(lis)
    5 结果:
    6 [0, 1, 2, 3, 4]

      通过list()方法,将元组、字典、字符串转换成列表,其中字典转换成列表时,只转换字典中的key。

    1 tup = (1,2,3,4)
    2 print(type(tup))
    3 lis = list(tup)
    4 print(lis)
    5 print(type(lis))
    6 结果:
    7 <class 'tuple'>
    8 [1, 2, 3, 4]
    9 <class 'list'>

    2.切片

      列表有严格的顺序,可通过索引对列表进行增删改查,切片;[1:3]中,1和3分别是列表的索引,遵守原则,包括前但不包括后。

    1 lis = ["a","b","c","d","e"]
    2 li1 = lis[1:3]
    3 print(li1)
    4 结果:
    5 ['b', 'c']

      lis[0:-1:1] 0指从第一个数开始,-1指列表中最后一个,由于不包括右边,则未打印出 ”e"。

    1 lis = ["a","b","c","d","e"]
    2 li1 = lis[0:-1:1]
    3 print(li1)
    4 结果:
    5 ['a', 'b', 'c', 'd']

      从0切到最后时,0和最后的1 均可以省略,即li1 = lis[::]。

    1 lis = ["a","b","c","d","e"]
    2 li1 = lis[0::1]
    3 print(li1)
    4 结果:
    5 ['a', 'b', 'c', 'd', 'e']

      lis[::2] 中 2是指分割的间隔,如果是1的话指一个一个的查找,2指隔一个查找一个。

    1 lis = ["a","b","c","d","e"]
    2 li1 = lis[::2]
    3 print(li1)
    4 结果:
    5 ['a', 'c', 'e']

    3.增

    1)lis.append()

      在列表的最后一个元素后面依次顺序添加,lis.append("元素")。

    1 lis = ["a","b","c","d","e"]
    2 lis.append('f')
    3 print(lis)
    4 结果:
    5 ['a', 'b', 'c', 'd', 'e', 'f']

    2)lis.insert()

      根据索引值,将元素添加到指定索引值上,其他元素往后挪,lis.insert(1,'元素')。

    1 lis = ["a","b","c","d","e"]
    2 lis.insert(1,'f')
    3 print(lis)
    4 结果:
    5 ['a', 'f', 'b', 'c', 'd', 'e']

    3)lis.extend

      将另一个列表添加到指定列表中

    1 lis = ["a","b","c","d","e"]
    2 li1 = [1,2,3]
    3 lis.extend(li1)
    4 print(lis)
    5 print(li1)
    6 结果:
    7 ['a', 'b', 'c', 'd', 'e', 1, 2, 3]
    8 [1, 2, 3]

    4.删

    1)lis.remove()

      根据元素指定删除

    1 lis = ["a","b","c","d","e"]
    2 lis.remove('a')
    3 print(lis)
    4 结果:
    5 ['b', 'c', 'd', 'e']

    2)lis.pop()

      lis.pop(1)指删除列表lis中索引为1的元素,根据需求可以定义一个变量接收删除的元素,未指定索引时则删除最后一个元素。

    1 lis = ["a","b","c","d","e"]
    2 lis.pop()
    3 print(lis)
    4 lis.pop(1)
    5 print(lis)
    6 结果:
    7 ['a', 'b', 'c', 'd']
    8 ['a', 'c', 'd']

    3)del

      del lis 可直接删除列表lis。

    1 lis = ["a","b","c","d","e"]
    2 del lis[1]
    3 print(lis)
    4 结果:
    5 ['a', 'c', 'd', 'e']

    4)lis.clear()

      将列表内元素清空,但是列表lis仍存在,del lis 会将列表删除。

    1 lis = ["a","b","c","d","e"]
    2 lis.clear()
    3 print(lis)
    4 结果:
    5 []

    5.改

      修改可直接根据索引值重新赋值即可。

    1 lis = ["a","b","c","d","e"]
    2 lis[0] = 'z'
    3 print(lis)
    4 lis[0:3] = [1,2,3]
    5 print(lis)
    6 结果:
    7 ['z', 'b', 'c', 'd', 'e']
    8 [1, 2, 3, 'd', 'e']

    6.查

    1)lis.count()

      根据指定元素查找其出现的次数。

    1 lis = ["a","b","c","d","e","a"]
    2 print(lis.count('a'))
    3 结果:
    4 2

    2)lis.index()

      根据指定元素查找其对应的索引值,与字符串中的index()方法相同,可以从不同位置开始查找。

    1 lis = ["a","b","c","d","e","a"]
    2 print(lis.index('a'))
    3 print(lis.index('a',2))
    4 结果:
    5 0
    6 5

    7.列表排序

      优先级顺序:数字>大写字母>小写字母>符号>中文

    1)lis.sort()

      按照优先级顺序将列表排列

    1 lis = ["","","","a","b","c","D","E","F","1","3","2"]
    2 lis.sort()
    3 print(lis)
    4 结果:
    5 ['1', '2', '3', 'D', 'E', 'F', 'a', 'b', 'c', '', '', '']

    2)sorted()

      将列表按照优先级顺序排列,需有一个新列表接收,原列表顺序不变。

    1 lis = ["","","","a","b","c","D","E","F","1","3","2"]
    2 li1 =sorted(lis)
    3 print(lis)
    4 print(li1)
    5 结果:
    6 ['', '', '', 'a', 'b', 'c', 'D', 'E', 'F', '1', '3', '2']
    7 ['1', '2', '3', 'D', 'E', 'F', 'a', 'b', 'c', '', '', '']

    3)lis.reverse()

      将列表按照优先级顺序反向排列,只会反序每个优先级中的顺序。

    1 lis = ["","","","a","b","c","D","E","F","1","3","2"]
    2 lis.reverse()
    3 print(lis)
    4 结果:
    5 ['2', '3', '1', 'F', 'E', 'D', 'c', 'b', 'a', '', '', '']

     8.遍历列表

      一般遍历

    1 lis = ["a","b","c","d","e"]
    2 for i in lis:
    3     print(i)
    4 结果:
    5 a
    6 b
    7 c
    8 d
    9 e

      切片遍历

    1 lis = ["a","b","c","d","e"]
    2 for i in lis[0:3]:
    3     print(i)
    4 结果:
    5 a
    6 b
    7 c
  • 相关阅读:
    第八周学习进度
    个人NABCD
    软件需求模式阅读笔记一
    问题账户需求分析
    2017年秋季个人阅读计划
    软件需求与分析——读后感
    第十六周周总结
    第十五周周总结
    第十四周周总结
    第十三周周总结
  • 原文地址:https://www.cnblogs.com/foxshu/p/12031573.html
Copyright © 2011-2022 走看看