Python学习笔记——列表

Python列表函数&方法

函数:

len(list):列表元素个数

max(list):返回列表元素最大值

min(list):返回列表元素最小值

list(seq):将元组转换为列表

方法

list.append(obj):在列表末尾添加新的对象

list.count(obj):统计某个元素在列表中出现的次数

list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list.index(obj):从列表中找出某个值第一个匹配项的索引位置

list.insert(index, obj):将对象插入列表

list.pop([index=-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

list.remove(obj):移除列表中某个值的第一个匹配项

list.reverse():反向列表中元素

list.sort( key=None, reverse=False):对原列表进行排序

list.clear():清空列表

list.copy():复制列表

列表是什么

在Python中,用方括号( [] )来表示列表,并用逗号来分隔其中的元素。
列表中的每个值都有对应的位置值,称之为索引,索引从 0开始。
  • 列表由一系列按特定顺序排列的元素组成;

  • 可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中;

  • 列表的数据项不需要具有相同的类型,列表中的元素之间可以没有任何关系;

  • 列表都可以进行的操作包括索引,切片,加,乘,检查成员。

访问列表元素

列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。

要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。

#!/usr/bin/python3

list = ['red', 'green', 'blue', 'yellow', 'white', 'black']
#列表索引从 0 开始
print( list[0] )    #red

#索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推
print( list[-1] )    #black

可以使用方括号 [] 的形式截取字符:

#!/usr/bin/python3

nums = [10, 20, 30, 40, 50, 60, 70, 80, 90]
print(nums[0:4])    #[10, 20, 30, 40]

# 从第二位开始(包含)截取到倒数第二位(不包含)
print ("list[1:-2]: ", list[1:-2])    #[20, 30, 40, 50, 60, 70, 80]

更新列表

创建的大多数列表都将是动态的,这意味着列表创建后,将随着程序的运行增删元素。

修改列表元素

要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。
list = ['Google', 'Runoob', 1997, 2000]
 
print ("第三个元素为 : ", list[2])
list[2] = 2001
print ("更新后的第三个元素为 : ", list[2])

在列表中添加元素

  1. 在列表末尾添加元素:使用 append() 方法将元素添加到了列表末尾

  1. 在列表中插入元素:使用方法 insert() 可在列表的任何位置添加新元素

list = ['aaa', 'bbb', 'ccc']
list.insert(0, 'ddd')
print(list)    #['aaa', 'bbb', 'ccc', 'ddd']

从列表中删除元素

  1. 使用 del 语句删除元素(根据索引位置删除元素)

  1. 使用方法 pop() 删除元素(删除列表末尾的元素)

  1. 弹出列表中任何位置处的元素(pop(索引)可删除指定位置的元素)

  1. 根据值删除元素(使用方法 remove())

注意:

方法 remove() 只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要

使用循环来判断是否删除了所有这样的值。

如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用 del 语句;如果你要在删除元素后还能继续使用它,就使用方法 pop() 。

列表排序

使用方法 sort() 对列表进行永久性排序

cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort()
print(cars)    #['audi', 'bmw', 'subaru', 'toyota']

#按与字母顺序相反的顺序排序,只需向 sort() 方法传递参数reverse=True 。
cars.sort(reverse=True)
print(cars)    #['toyota', 'subaru', 'bmw', 'audi']

使用函数 sorted() 对列表进行临时排序

要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数 sorted() 。
函数sorted() 让你能够按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。
cars = ['bmw', 'audi', 'toyota', 'subaru']

#['audi', 'bmw', 'subaru', 'toyota']
print(sorted(cars))
#['bmw', 'audi', 'toyota', 'subaru']
print(cars)

注意:调用函数 sorted() 后,列表元素的排列顺序并没有变。如果你要按与字母顺序相反的顺序显示列表,也可向函数 sorted() 传递参数 reverse=True 。

反序

使用方法 reverse() 可反转列表元素的排列顺序

cars = ['bmw', 'audi', 'toyota', 'subaru']

cars.reverse()
print(cars)    #['subaru', 'toyota', 'audi', 'bmw']

列表的长度

使用函数 len() 可快速获悉列表的长度。

Python列表脚本操作符

列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

len([1, 2, 3])    #长度:3    
[1, 2, 3] + [4, 5, 6]    #组合:[1, 2, 3, 4, 5, 6]    
['Hi!'] * 4    # 重复:['Hi!', 'Hi!', 'Hi!', 'Hi!']   
3 in [1, 2, 3]    #元素是否存在于列表中:True    
for x in [1, 2, 3]: print(x, end=" ")    #迭代:1 2 3    

#使用嵌套列表即在列表里创建其它列表
>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]

列表比较

列表比较需要引入 operator 模块的 eq 方法
# 导入 operator 模块
import operator

a = [1, 2]
b = [2, 3]
c = [2, 3]
print("operator.eq(a,b): ", operator.eq(a,b))    #operator.eq(a,b):  False
print("operator.eq(c,b): ", operator.eq(c,b))    #operator.eq(c,b):  True
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值