目录
insert(i, item):在列表的第i个位置插入一个元素
一、列表
1、什么是列表
Python中的列表是零个或多个指向Python数据对象的引用的有序且可更改的合集,通过在方括号内以逗号分隔的一系列值来表达。这一集合可以被赋值给一个变量。
2、列表的创建
列表需要使用方括号(中括号)[ ],元素间使用英文逗号(,)分隔,例如:
lst = ['Hello', 'World']
列表的创建方式:
①中括号:
lst = [1, 2, 3]
②内置函数list():
lst = list([1, 2, 3])
注意:②方法通常在一行需输入多个数据中使用
3、列表的特点及运算
特点:
①列表元素按顺序有序排列
②索引映射唯一个数据
③列表可以存在重复元素
④可以任意数据类型混存
⑤根据需要动态分配和回收内存
运算:
①索引 [ ] :取列表中的某一元素
②连接 + :连接列表
lst = [1, 2, 3]
lst2 = [4, 5, 6]
print(lst + lst2)
>>> [1, 2, 3, 4, 5, 6]
③重复 * :重复N次连接
lst = [0] * 3
>>> [0, 0, 0]
注意:重复运算返回的结果是序列中指向数据对象的引用的重复
A = [1, 2, 3]
B = [A] * 3
>>> [[1, 2, 3], [1, 2, 3], [1, 2, 3]]
A[1] = 0
>>> [[1, 0, 3], [1, 0, 3], [1, 0, 3]]
④成员 in :判断列表中是否存在某元素,返回True 和 False
⑤长度 len :返回列表长度
⑥切片 [ : ] :取出列表的一部分
4、Python列表提供的方法
append(item):向列表末尾增添一个新元素
lst = [1, 2, 3]
lst.append(6)
>>> [1, 2, 3, 6]
extend(item):向列表末尾增添至少一个元素
lst = [1, 2, 3]
lst.append([9, 5])
>>> [1, 2, 3, 9, 5]
insert(i, item):在列表的第i个位置插入一个元素
lst = [1, 2, 3]
lst.insert(2, 3.14)
>>> [1, 2, 3.14, 3]
pop(i):返回列表中第i个位置的元素(默认返回末尾)
lst = [1, 2, 3]
lst.pop()
>>> 3
lst.pop(1)
>>> 2
sort():将列表元素排序
lst = [1, 4, 2, 3]
lst.sort()
>>> [1, 2, 3, 4]
reverse():将列表元素倒序
lst = [1, 2, 3]
lst.reverse()
>>> [3, 2, 1]
clear():清空列表
lst = [1, 2, 3]
lst.clear()
>>> []
del:删除列表中的某个元素(或删除列表)
lst = [1, 2, 3]
del lst[1]
print(lst)
>>> [1, 3]
del lst
print(lst)
>>> (报错,列表已不存在)
index(item):返回item第一次出现时的下标
lst = [1, 2, 3, 2]
lst.index(2)
>>> 1
count(item):返回item在列表中出现的次数
lst = [1, 2, 3, 2]
lst.count(2)
>>> 2
remove(item):从列表中移除第一次出现的item
lst = [1, 2, 3, 2]
lst.remove(2)
>>> [1, 3, 2]
5、列表元素的修改
由前面我们得知,列表有着字符串不具备的“可更改”特性,其包括:①对列表元素值进行修改;②切片操作。
例如:
lst = [1, 2, 3, 4]
lst[2] = 100
>>> [1, 2, 100, 4]
lst[1:3] = [300, 400, 500, 600]
>>> [1, 300, 400, 500, 600, 4]
6、列表生成式
[i * i for i in range(1, 10)] # i * i为列表元素表达式, i为自定义变量
>>> [1, 4, 9, 16, 25, 36, 49, 64, 81]
二、集
1、什么是集
集是由0个或多个不可修改的Python数据对象组成的无序集合。其不允许有重复元素,且由花括号组成,空集由set()表示。集可赋给变量。
2、集的创建
①直接{ }起手
②使用内置函数set()
3、集支持的运算
①成员 in :(同列表)
②长度 len :(同列表)
③ | (同方法union) 集1 | 集2 :返回一个包含两集合所有元素的新集
④ & (同方法intersection) 集1 & 集2 :返回一个包含两集合共有元素的新集
⑤ - (同方法difference) 集1 - 集2 :返回一个集,仅包含出现在集合1中的元素
⑥ <= (同方法issubset) 集1 <= 集2 :询问集1的元素是否都在集合2中
4、Python集提供的方法
add(item):
向集合中添加一个元素
remove(item):
将item从集合中移除
pop():
随机移除集中的一个元素
clear():
清空集合
5、集合生成式
{i * i for i in range(1, 10)}
>>> {64, 1, 4, 36, 9, 16, 49, 81, 25}
三、字典
1、什么是字典
无序结构、由元素对构成。每对元素由一个键和一个值组成,通常写成键:值的形式。用{ }和逗号表达。键不可重复,且必须为不可变对象。字典以空间换时间,内存消耗大。
例如:
dictionaries = {'name': 'Tom', 'age': 15, 'hobby': 'study'}
可以通过键来访问对应的值,方法与列表类似。同时向字典添加新键-值对的方法比较粗暴
dictionaries = {'name': 'Tom', 'age': 15, 'hobby': 'study'}
dictionaries['name']
>>> Tom
dictionaries.get('age')
>>> 15
dictionaries['friend'] = 'Jerry'
dictionaries
>>> {'name': 'Tom', 'age': 15, 'hobby': 'study', 'friend': 'Jerry'}
2、字典支持的运算
[ ] :dictionaries[k], 返回与k相关联的值,无则报错
in :key in dictionaries, 判断key是否在字典中,返回True或False
del :del dictionaries[k], 删除kry键-值对
3、Python字典提供的方法
keys():
返回字典中所有的键
values():
返回字典中所有的值
items():
返回字典中所有的键-值对
get(k):
返回k对应的值,没有则默认返回None
4、字典生成式
key = ['name', 'age', 'hobby']
value = ['Tom', 15, 'study']
dictionaries = {key.upper(): value for key, value in zip(key, value)}
>>> {'NAME': 'Tom', 'AGE': 15, 'HOBBY': 'study'}
四、元组
1、什么是元组
不可变序列,用( )表示。空元组用( )或tuple( )表示。
2、元组的创建
①直接小括号
t = ('python', 'hello', 'world')
②使用内置函数tuple()
t = tuple(('python', 'hello'))
③只包含一个元素的元组需用逗号和小括号
t = (100, )
3、元组支持的运算
+ 和 *
t = (1, 2, 3)
t2 = (4, 5, 6)
t3 = t + t2
>>> (1, 2, 3, 4, 5, 6)
t1 = t * 3
>>> (1, 2, 3, 1, 2, 3, 1, 2, 3)
4、Python元组提供的方法
①index() :(同上)
②count() :(同上)