python自学笔记——第三章:列表简介

  • 列表由一系列按特定顺序排列的元素组成,列表通常包含多个元素,因此给列表制定一个表示复数的名称是个好主意
  • Python中,用方括号([])表示列表,并用逗号分隔其中的元素,需要注意的是Python在打印列表时会将方括号也同样打印出来
  • 当请求获取列表元素时,Python只返回元素而不包括方括号。
  • 在Python中,第一个列表元素的索引为0而不是1。负数索引例如:
    bicycles[-n]

    意为访问列表bicycles的倒数第n个元素

  • 修改、添加和删除元素

  1. 修改列表元素:要修改列表元素可指定列表名修改的元素的索引,在指定该元素的新值
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)  
    transportations[0] = 'train'
    print(transportations)  
    
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['train', 'bicycle', 'motorcycle']
  2.  在列表中添加元素
    1.在列表末尾添加元素,append:
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.append('train')
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['car', 'bicycle', 'motorcycle', 'train']

    方法:可以先传建一个空列表,再使用一系列函数调用append()来添加元素,例如:

    transportations = []
    transportations.append('car')
    transportations.append('bicycle')
    transportations.append('motorcycle')

    这种方法很常见,因为经常要等到程序运行后,我们才知道用户要在程序中存储哪些数据。为控制用户,可以首先创建一个空列表,用于存储用户将要输入的值,然后将用户提供的每个新值附加到列表中

    2.在列表中插入元素
    在列表中任意位置添加新的元素,insert():
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.insert(1,'train')
    print(transportations)
    
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['car', 'train', 'bicycle', 'motorcycle']

    注意:上述两种方法都是永久修改!!!

  3. 从列表中删除元素
    1.知道索引下的删除del,例如:
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    del transportation[1]
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['car', 'motorcycle']

    当我们要将元素从列表中删除,并接着使用它的值,是可以用pop()方法删除列表末尾的的元素,并能够接着使用它

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    popped_transportation = transportation.pop()
    print(popped_transportation)
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    motorcycle
    ['car', 'bicycle']

    事实上,若我们采用在pop()方法中指定参数的方式,可以删除列表中任意位置的元素,并接着使用。只需要在圆括号中指定要删除的元素索引即可,例如:

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    popped_transportation = transportations.pop(1)
    print(popped_transportation)
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    bicycle
    ['car', 'motorcycle']

    如果我们不知道要删除元素的索引,而知道元素的值,此时我们可以用remove的方法,例如:

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.remove('bicycle')
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['car', 'motorcycle']

       在上例中是采用参数直接传递的方式,当然,也可以通过变量来传递参数,例如:

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    whatiwanttodelete = 'bicycle'
    transportations.remove(whatiwanttodelete)
    print(transportations)

    也可以达到同样的效果,这样做的好处是我们可以像使用pop()一样,接着使用这个被删除的元素,但需要注意的是,这二者的实现原理是完全不一样的!注意:remove()只能删除第一个指定的值!如果删除的值在列表中出现多次,就需要使用循环来确保将每个值都删除!

  • 组织列表

  1. 使用方法sort()对列表永久排序
    1.按照字母顺序排列,例如:
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.sort()
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['bicycle', 'car', 'motorcycle']
    
    2.按照与字母顺序相反的顺序排列元素,只需在使用sort()时传递参数reverse,使reverse = True即可
    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.sort(reverse = True)
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['motorcycle', 'car', 'bicycle']

    注意:对列表的修改是永久性的!!!

  2. 使用方法sorted()对列表临时排序

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    print(sorted(transportations))
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['bicycle', 'car', 'motorcycle']
    ['car', 'bicycle', 'motorcycle']
    
    若要按照与字母顺序相反的顺序排列元素,只需在使用sorted()时传递参数reverse,使reverse = True即可

    可见,函数sorted()并没有改变列表元素的原始顺序,如果想通过sorted()永久改变列表,需要将调用sorted()后的列表传递给原始列表,如下:

    transportations = sorted(transportations)

    注意:在并非所有的值都是小写时,按字母顺序排列列表元素要复杂些。此时在决定排列顺序时,有多种解读大写字母的方式。

  3. 倒着打印列表元素reverse()

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    transportations.reverse()
    print(transportations)
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    ['motorcycle', 'bicycle', 'car']
    

    注意:reverse()不是按照字母顺序颠倒顺序,而只是将列表元素反转而已!!!如果想要恢复到原来的顺序只需要再次调用reverse即可。

  4. 确定列表长度len()

    transportations = ['car' , 'bicycle' , 'motorcycle']
    print(transportations)
    print(len(transportations))
    
    输出:
    ['car', 'bicycle', 'motorcycle']
    3

  • 心得:当我们列表索引错误却找不到解决方法时,不妨先将列表打印出来。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值