Python3---列表、字典、集合

前言

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字即它的位置,或者称之为索引,有关索引在我的博客中讲过,它可以用切片来操作。
这里再简单赘述一下,假设字符长度为n,从第一位到最后一位的切片是:
第一种方式:0,1,2,3…n-2,n-1
第二种方式:-n,-n+1,…,-2,-1
依次类推。
Python2/3中有6个内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python还确定了序列的长度以及确定最大最小值的元素方法。

Python3 列表

列表是最常用的Python数据类型,它可以作为一个方括号内的分隔值出现。
列表的数据项数据不需要具有相同的类型.

创建列表、空列表

在这里插入图片描述

更新列表

在这里插入图片描述

合并列表

  • append():追加元素
  • extend():再原有列表的基础上追加列表
  • + :两个列表合并成一个新的列表
  • +=:效果与extend()一样
  • *:重复列表
    append()、extend()的结果不会重新生成内存空间,而+、+=、*会
    在这里插入图片描述
    在这里插入图片描述

删除列表元素

可以使用del语句来删除列表的元素。
remove()函数用于移除列表中的某个的第一个匹配项。
在这里插入图片描述

列表截取

在这里插入图片描述

Python列表操作的函数和方法

列表操作包含以下函数:

  1. cmp(list1, list2):比较两个列表的元素 ;python3中已经移除了这个函数
    在这里插入图片描述
  2. len(list):列表元素个数;
  3. max(list):返回列表元素最大值;
  4. min(list):返回列表元素最小值;
  5. list(seq):将元组转换为列表。

列表操作包含以下方法:

  1. list.append(obj):在列表末尾添加新的对象;
  2. list.count(obj):统计某个元素在列表中出现的次数;
  3. list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表 扩展原来的列表);
  4. list.index(obj):从列表中找出某个值第一个匹配项的索引位置;
  5. list.insert(index, obj):将对象插入列表;
  6. list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值;
  7. list.remove(obj):移除列表中某个值的第一个匹配项;
  8. list.reverse():反向列表中元素;
  9. list.sort([func]):对原列表进行排序。

二维列表的创建与访问

在这里插入图片描述

Python3 字典

字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key:value)对用冒号(:)分割,每对直接用,分割,整个字典在{}中,格式如下所示:

d = {key1 : value1, key2 : value2 }

其键必须是唯一的,但值则不必,值可以取任何数据类型,但键必须是不可变的,如字符串,数字或者元组。
在这里插入图片描述

修改字典

可向字典添加新的内容的方法是增加新的键/值对,修改或删除已有键/值对。
在这里插入图片描述

删除字典以及元素

在这里插入图片描述

字典的特性

  1. 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,也就是说后面的会覆盖前面的
    在这里插入图片描述
  2. 键必须不可变,所以可以用数字、字符串或者元组充当,而用列表就不行,如下实例:
    在这里插入图片描述

字典内置函数&方法

Python3字典包含了以下内置函数:

函数 描述
len(dict) 计算字典元素个数,即键的总数
str(dict) 输出字典,以可打印的字符串表示
type(variable) 返回输入的变量类型,如果变量是字典就返回字典类性

Python3字典包含了以下内置方法

函数名 描述
radiansdict.clear() 删除字典内所有元素
radiansdict.copy() 返回一个字典的浅复制
radiansdict.fromkeys() 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
radiansdict.get(key, default=None) 返回指定键的值,如果值不在字典中返回default值
key in dict 如果键在字典dict里返回true,否则返回false
radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组
radiansdict.keys() 返回一个迭代器,可以使用 list() 来转换为列表
radiansdict.setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
radiansdict.update(dict2) 把字典dict2的键/值对更新到dict里
radiansdict.values() 返回一个迭代器,可以使用 list() 来转换为列表
pop(key[,default]) 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
popitem() 随机返回并删除字典中的最后一对键和值。

Python3 集合

集合(set)是一个无序的不重复元素序列。
可以使用大括号是{}或者set()函数创建集合,**注意:创建一个空集合必须用set()而不是{ },因为{ }是用来创建一个空字典。

parame = {value01,value02,......}
或者
set(value01,value02,...)

基本操作
在这里插入图片描述
跟列表一样,因为可变的特性,所有它也由推导式——集合推导式(Set comprehension)
在这里插入图片描述

添加操作

将元素添加到集合中,如果元素已存在,则不进行任何操作。
在这里插入图片描述
还有一个方法式update,这里面的参数可以是多个,用逗号隔开
在这里插入图片描述
在这里插入图片描述

集合内置方法完整列表

方法 描述
add() 为集合添加元素
clear() 移除集合中的所有元素
copy() 拷贝一个集合
difference() 返回多个集合的差集
difference_update() 移除集合中的元素,该元素在指定的集合也存在。
discard() 删除集合中指定的元素
intersection() 返回集合的交集
intersection_update() 返回集合的交集。
isdisjoint() 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
issubset() 判断指定集合是否为该方法参数集合的子集。
issuperset() 判断该方法的参数集合是否为指定集合的子集
pop() 随机移除元素
remove() 移除指定元素
symmetric_difference() 返回两个集合中不重复的元素集合。
symmetric_difference_update() 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
union() 返回两个集合的并集
update() 给集合添加元素
发布了32 篇原创文章 · 获赞 15 · 访问量 2462

猜你喜欢

转载自blog.csdn.net/weixin_44350891/article/details/104867397