列表是在一个地方存储成组的信息,其中可以只包含几个元素也可以包含数百万个元素

3.1 列表

  • 列表由一系列按特定顺序排列的元素组成
  • 用【】表示列表,并用逗号分割其中的元素

3.1.1 访问列表元素

  • 列表是有序集合,要访问列表的任何元素,只要给元素的位置即可
  • 若元素为字符串,可以直接调用字符串的方法
a=['ade','bcd','efg','hij']
print(a[0])
print(a[0].title())

3.1.2 索引从0而不是1开始

  • 第一个列表元素的索引为0,而不是1
  • 最后一个位置的索引为-1,倒数元素可以依次从-1索引
a=['ade','bcd','efg','hij']
print(a[1])
print(a[-1])

3.1.3 使用列表中各个值

  • 拼接列表的值创建消息
a=['ade','bcd','birthday','hij']
print("this is my "+a[2].title()+" cake.")

3.2 修改、添加和删除元素

3.2.1 修改列表元素

  • 直接对应索引位置赋值
a=['ade','bcd','cde','edf']
a[1]='abc'
print(a)

3.2.2 添加列表元素

  • 在列表末尾添加元素:append()
a=['ade','bcd','cde','edf']
a.append('yur')
print(a)

直接创建空列表,再用append()添加元素

a=[]
a.append('abc')
a.append('bcd')
a.append('def')
print(a)
  • 在列表的任何位置添加元素:insert()
a=['abc','bcd','def']
a.insert(1,'cde')
print(a)

3.2.3 删除列表元素

  • 按对应位置删除元素:del()

使用del语句将值从列表中删除后,就无法再访问了

a=['abc','bcd','def']
del a[1]
print(a)
  • 删除列表末尾的元素:pop()

列表就像一个栈,删除列表末尾的元素相当于弹出栈顶元素

a=['abc','bcd','def']
b=a.pop()
print(b)

使用pop(索引)弹出任意位置的元素

a=['abc','bcd','def']
b=a.pop(1)
print(b)

注意:使用del表示不再使用该元素,使用pop后续还能继续使用该元素。

  • 按值删除元素:remove()

remove()只删除第一个制定的值

a=['abc','bcd','def']
a.remove('abc')
print(a)

3.3 对列表元素排序

3.3.1 永久性排序:sort()

逆序: sort(reverse=True)

字母从小到大,数字从小到大

a=['bc','zbcd','aef']
a.sort()
print(a)
a.sort(reverse=True)
print(a)

3.3.2 临时性排序:sorted()

逆序:sorted(reverse=True)

这个排序可以按特定顺序显示列表元素,同时不影响它们在列表中的原始排序顺序

a="a d b r e"
print(a)
print(sorted(a))

3.3.3 倒着打印列表reverse()

reverse()永久性底修改列表元素的排列顺序,但可随时恢复到原来的排列顺序,再次调用reverse()即可

a=['bmw','audi','toyota','subaru']
a.reverse()
print(a)

3.3.4 确定列表的长度len()

a=['bmw','audi','toyota','subaru']
print(len(a))

3.4 使用列表时避免索引错误

  • 一共包含三个元素,却要获取第四个元素
    image
  • 当列表元素为空时,访问最后一个元素会导致错误
    image

原文地址:http://www.cnblogs.com/yuyingblogs/p/16852738.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性