zoukankan      html  css  js  c++  java
  • Python基础【day02】:列表(三)

    本节内容

    0、列表常用功能汇总
    1、定义列表
    2、访问列表中的元素
    3、切片
    4、追加
    5、插入
    6、修改
    7、拷贝
    8、删除
    9、扩展
    10、统计
    11、翻转
    12、排序
    13、获取下标值
    14、清空列表

    列表是Python最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作

    0、列表常用功能汇总

    1、定义列表

    >>> name=[]  #定义空列表
    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']  #定义一个非空列表

     2、访问列表中的元素

    >>> name=[]
    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name[0]
    'luoahong'
    >>> name[1]
    'chenqun'
    >>> name[2]
    'wenhai'
    >>> name[3]
    'daiqiao'
    >>> name[-1]  #倒着取最后一个值
    'guiwei'
    >>> name[-2]
    'xiedi'

     注:列表的下标值是从0开始取值的

    3、切片

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name[1:3]
    ['chenqun', 'wenhai']
    >>> name[1:-1]
    ['chenqun', 'wenhai', 'daiqiao', 'xiedi']
    >>> name[0:3]
    ['luoahong', 'chenqun', 'wenhai']
    >>> name[:3]
    ['luoahong', 'chenqun', 'wenhai']
    >>> name[3:]
    ['daiqiao', 'xiedi', 'guiwei']
    >>> name[:2]
    ['luoahong', 'chenqun']
    >>> name[::2]
    ['luoahong', 'wenhai', 'xiedi']

    切片小结:

    ①序列始终都是从左向右切片的,不能是从右向左

    ①列表切片时,起始位的元素是包括的,结束位的元素是不包括(又叫顾头不顾尾),最后一个位置表示步长(names[开始位:结束位:步长])

    ②如果从0位置取值,0可以省略

    ③想取最后一个值时,结束位不能是-1,因为结束位的元素不包括,所以只能留空

    4、追加(append(元素))

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.append("liuhailin")
    >>> name
    ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', 'liuhailin']  #liuhailin是新加的

    5、插入(insert(下标值,插入的内容))

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.insert(0,"liyang")  #0表示需要插入的下标值,'1'表示插入的内容
    >>> name
    ['liyang', 'luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']   #在下标值为0的地方插入liyang

     6、修改

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name[1]='chenqundage'
    >>> name
    ['luoahong', 'chenqundage', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

     注:修改列表中的元素,直接是 names[下标值] = 新值

    7、拷贝(copy())

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name2=name.copy()
    >>> name2
    ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

     注:这边的copy都是浅copy,只能copy第一层。深浅拷贝的详细信息:

    8、删除(del、remove(元素)、pop())

    #根据下标值删除元素
    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] >>> del name[0] >>> name ['chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']
    #根据元素删除 >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] >>> name.remove('xiedi') >>> name ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'guiwei']
    #删除最后一个 >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei'] >>> name.pop() 'guiwei' >>> >>> 

     注:

    ①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.pop(1)   #在输入下标值得情况下和del的效果是一样的
    'chenqun' >>> name ['luoahong', 'wenhai', 'daiqiao', 'xiedi', 'guiwei']

    ②del关键字不仅可以删除列表中的元素,也可以删除变量

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    #删除name这个变量
    del name >>> name Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'name' is not defined

     注:

    ①如果pop()中有下标值,则是删掉具体某个元素,其效果和del的效果是一样的

    ②del关键字不仅可以删除列表中的元素,也可以删除变量

     9、扩展(extend)

    >>> name1=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name2=['1','2','3','4','5','6']
    >>> name1.extend(name2)
    >>> name1
    ['luoahong', 'chenqun', 'wenhai', 'daiqiao', 'xiedi', 'guiwei', '1', '2', '3', '4', '5', '6']

    注:names2的列表合并到names1中,但是,names2这个列表依然存在,如果想删除names2这个变量,则只需del names2即可

    10、统计(count(元素))

    >>> name1=['luoahong','chenqun','wenhai','daiqiao','chenqun','xiedi','guiwei','chenqun']
    >>> name1.count('chenqun')  #统计元素'chenqun'元素的个数
    3

     11、翻转(reverse())

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.reverse()
    >>> name
    ['guiwei', 'xiedi', 'daiqiao', 'wenhai', 'chenqun', 'luoahong']   #将整个列表翻转过来

     12、排序(sort())

    >>> name=['4','3','2','1']
    >>> name.sort()
    >>> name
    ['1', '2', '3', '4
     
     

     13、获取下标值(index(元素))

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.index('chenqun')
    1

     14、清空列表(clear())

    >>> name=['luoahong','chenqun','wenhai','daiqiao','xiedi','guiwei']
    >>> name.clear()
    NameError: name 'names' is not defined
    >>> name
    []
    
  • 相关阅读:
    数组元素的查找1
    排序——选择排序
    排序——冒泡排序
    内部类——匿名内部类
    跳一跳
    数组元素换位置游戏
    六 java和Tomcat
    九 Jenkins持续集成
    八 ip和子网详解
    七 Git版本控制
  • 原文地址:https://www.cnblogs.com/luoahong/p/7159821.html
Copyright © 2011-2022 走看看