Python的容器数据类型有:列表、元组、字典、集合、字符串。

列表

一 定义

有序集合,能够保持任意数量和任意类型的Python对象

二 创建列表

❤直接创建:

x = [2,3,4,5]

print(x,type(x))

❤ 利用range()创建列表

x = list(range(10)) #0,1,2,3,,5,6,7,8,9

y = list(range(1,11,2)) # 1,3,5,7,9

z = list(range(10,1,-2)) #10,8,6,,2

print(x,type(x))

print(x,type(x))

❤ 利用推导式创建列表

x = [0]*5

print(x,type(x)) # [0,0,0,0,0]

x = [0 for i in range(5)]

print(x,type(x))

x = [i for i in range(5)]

print(x,type(x))

x = [i for i in range(1,10,2)]

print(x,type(x))

x = [i ** 2 for i in range(1,10)]

print(x,type(x))

x = [i for i in range(100) if (i%2) != 0 and (i%3) == 0]

print(x,type(x))

由于list的元素可以是任何对象,因此列表中所保存的是对象的指针,即使保存一个简单的[1,2,3],也有3个指针和3个整数对象。

❤ 创建一个混合列表

mix = [1,'nalizi',3.14,[1,2,3]]

❤ 创建一个空列表

empty = []

列表不像元组,列表内容可更改,因此添加(append,extend)、插入(insert)、删除(remove,pop)等操作都有。

三 添加元素-注意append追加 和 extend扩展 的区别list.append(),只接受一个参数,是在末尾追加一个新的对象。假如这个对象是一个列表的话,也是作为一个整体(列表)追加进去。

list.extend(),是在列表末尾追加另一个序列中的多个值(用新列表扩展原来的列表)。

list.insert(index,obj) 是在编号index位置插入obj

x = [1,2,3,4]

x.insert(2,0)

print(x) # (1,2,0,3,4)

四 删除元素list.remove(obj) 是移除列表中某个值的第一个匹配项

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

del 删除单个或者多个对象(如果知道要删除的元素在列表的哪个位置,可使用del语句)

x = [1,2,3,4]

del x[0:2]

print(x) #x = [3,4]

如果要删除的元素不需要使用了,就使用del语句

如果删除后还需要继续使用这个元素,就使用pop()方法

五 获取元素通过元素的索引值,可以从列表获取单个元素(列表索引值是从0开始的)

若将索引值设置为-1,会返回最后一个列表元素;-2则会返回倒数第二个列表元素.......

print(x[-1])

六 常用操作符等号操作符:==

连接操作符:+

重复操作符:*

成员关系操作符: in,not in

函数方法与操作符的区别:append , extend , insert 对列表增加元素,并没有返回值,是直接修改了原数据对象;而将两个list相加,是创建了新的list对象,这会消耗额外的内存,因此当list较大的时候建议使用函数方法来添加list。

七 列表的其他方法list.count(obj) 统计某个元素在列表中出现的次数

list.index(x,[start],[end]) 从列表中找到某个值第一个匹配项的索引值

list1 = [123,456] * 5

print(list1.index(123)) # 0

print(list1.index(123,1)) # 2list.reverse() 对列表中的元素进行反向操作

list.sort(key = none,reverse =false) 对原列表进行排序

key:按key进行排序

reverse: true降序 false升序(默认)

#获取元组的第二个元素

def takeSecond(elem):

return elem[1]

x= [(2,2),(3,4),(4,1),(1,3)]

x.sort(key = takeSecond)

print(x) #[(4,1),(2,2),(1,3),(3,4)],因为是按元组的第二位排序

元组--关键点是小括号和逗号哦

一 创建和访问一个元组创建和访问一个元组列表和元组很像,但元组创建后不能修改,和字符串一样;

索引和切片的方式和列表一样;

元组中只包含一个元素时,需要在元素后加逗号,否则括号会被当做运算符使用。

x = (1)

print(type(x)) #int

x = ()

print(type(x)) #tuple

x = (1,)

print(type(x)) #tuple

print(8 * (8)) # 64

print(8 * (8,)) # (8,8,8,8,8,8,8,8)

2. 创建二维元组

x = (1,3.14,'python'),('data',11)

二 更新和删除一个元组

元组不可更改,不能直接赋值,但若其中的元素是可更改的类型,那么可以直接更改该元素。

t = (1,2,3,[4,5,6])

t[3][0] = 9

print(t) # (1,2,3,[9,5,6])

三 操作符 -和列表的完全一样

四 内置方法

count('python') 记元素出现几次

index('python') 找该元素在元组中的索引

五 解压元组

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐