集合python有相同元素报错_Python 元组与列表 集合与字典

这次简单整理一下Python中 元组与列表 集合与字典 的相关内容~

序列类型有12个通用的操作符和函数

操作符

描述

x in s

如果x是s的元素,返回True,否则返回False

x not in s

如果x不是s的元素,返回True,否则返回False

s + t

连接s和t

s * n 或 n * s

将序列s复制n次

s[i]

索引,返回序列的第i个元素

s[i:j]

分片,返回包含序列s第i到j个元素的子序列(不包含第j个元素)

s[i:j:k]

步骤分片,返回包含序列s第i个到j个元素以k为步数的子序列

len(s)

序列s的元素个数(长度)

min(s)

序列s中的最小元素

max(s)

序列s中的最大元素

s.index(x[,i[,j]])

序列s中从i开始到j位置中第一次出现元素x的位置

s.count(x)

序列s中出现x的总次数

元组:

一旦创建不可被修改,在表达固定数据项、函数多返回值、多变量同步赋值i、循环遍历等情况下十分有用。Python中元组采用逗号和圆括号(可选)来表示。

列表方法

方法

说明

list.append(x)

将元素x添加至列表尾部

list.extend(L)

将列表L中所有元素添加至列表尾部

list.insert(index,x)

在列表制定位置index处添加元素x

list.remove(x)

在列表中删除首次出现的制定元素

list.pop([index])

删除并返回列表对象指定位置的元素

list.clear()

删除列表中所有元素,但保留列表对象

list.index(x)

返回值为x的首个元素的下标

list.count(x)

返回指定元素x在列表中的出现次数

list.reverse()

对列表元素进行原地倒序

list.sort()

对列表元素进行原地排序(升序、降序)

list.copy()

返回列表对象的浅拷贝

注:除list.copy()外,列表方法均不会改变列表的id,也不会新建列表

列表推导式:

新元素表达式 for临时变量 in 可迭代对象 if 条件表达式

集合:

集合数据类型是没有顺序的简单对象的聚集,且集合中元素不重复,元素类型只能是固定数据类型

Python集合数据类型包括可变集合对象(set)和不可变集合对象(frozenset)

集合的定义{x1,[x2,…,xn]}

{}表示空的dict,因为dict也使用花括号定义。空集为set()

集合类型的10个操作符

集合有四种基础运算方法,并,交,差,补

S|T 并运算, 返回一个新集合,包含在集合S和T中的所有元素

S&T 交运算,返回一个新集合,包含既在S中又在T中的集合

S-T 差运算, 返回一个新的集合,包含在集合S中但是不在集合T中的元素

S^T 补运算, 返回一个新集合,包含集合S和T中的不相同元素

集合有两种关系运算操作

S<=T或者S,返回True/False,判断S和T的子集关系

S>=T或者S>T 关系运算,返回True/False,判断S和T的包含关系

集合由四种增强运算操作

S|=T 更新集合S,包含集合S和T中的所有元素

S&=T更新集合S,包含同时在集合S和T中的元素

S-=T 更新集合S,包含在集合S中,但是不在T中的元素

S^=T 更新集合S,包含集合S和T中的不相同元素

参考文章点击此处

集合类型主要用于三个场景:成员关系测试、元素去重和删除数据项

集合类型有10个操作函数或方法

函数或方法

描述

S.add(x)

如果数据项x不在集合中,将x增加到s

S.clear()

移除S中所有数据项

S.copy()

返回集合S的一个拷贝

S.pop()

随机返回集合S中的一个元素,如果S为空,产生KeyError异常

S.discard(x)

如果x在集合S中,移除该元素;如果x不在,不报错

S.remove(x)

如果x在集合S中,移除该元素;不在产生KeyError异常

S.isdisjoint(T)

如果集合S与T没有相同元素,返回True

len(S)

返回集合S元素个数

x in S

如果x是S的元素,返回True,否则返回False

x not in S

如果x不是S的元素,返回True,否则返回False

映射类型:是“键-值”数据项的组合,每个元素是一个键值对,即元素是(key,value),元素之间是无序的。键值对(key,value)是一种二元关系。在Python中,映射类型主要以字典(dict)体现

字典类型的基本概念

通过任意键信息查找一组数据中值信息的过程叫映射,Python语言中通过字典实现映射。Python语言中的字典可以通过大括号{}建立

{:,:,…,:}

其中,键和值通过冒号连接,不同键值对通过逗号隔开

字典:是一组键值对的数据结构。每个键对应于一个值。在字典中,键不能重复。根据键可以查询到值

对象的哈希值

字典的键只能使用不可变的对象,但字典的值可以使用不可变或可变的对象

字典打印出来的顺序与创建之初的顺序不同,这不是错误。字典是集合类型的延续,各个元素并没有顺序之分

函数和方法

描述

< d >.keys()

返回所有的键信息

< d >.values()

返回所有的值信息

< d >.items()

返回所有的键值对

< d >.get(< key >,< default >)

键存在则返回相应值,否则返回默认值

< d >.pop(< key >.< default >

键存在则返回相应值,同时删除键值对,否则返回默认值

< d >.popitem()

随机从字典中取出一个键值对,以元组(key,value)形式返回

< d >.clear()

删除所有的键值对

del< d >[< key >]

删除字典中某一个键值对

< key > in < d>

如果键在字典中返回True,否则返回False

Python字典常见操作

字典类型的操作

通过中括号可以增加新的元素

直接使用大括号({})可以创建一个空的字典,并通过中括号([])向其增加元素

函数和方法

描述

< d >.keys()

返回所有的键信息

< d >.values()

返回所有的值信息

< d >.items()

返回所有的键值对

< d >.get(< key >,< default >)

键存在则返回相应值,否则返回默认值

< d >.pop(< key >,< default >

键存在则返回相应值,同时删除键值对,否则返回默认值

< d >.popitem()

随机从字典中取出一个键值对,以元组(key,value)形式返回

< d >.clear()

删除所有的键值对

del < d >[< key >]

删除字典中某一个键值对

< key > in < d >

如果键在字典中返回True,否则返回False

与其他组合类型一样,字典可以通过for…in语句对其元素进行遍历,基本语法结构如下:

for 变量名 in 字典名

语句块

字典是实现键值对映射的数据结构

字典是一个键值对的集合,该集合以键为索引,一个键信息只对应一个值信息;

字典中元素以键信息为索引访问

字典长度是可变的,可以通过对键信息赋值实现增加或修改键值对

1.字典的访问操作

2.字典的视图对象

d.keys() #返回字典d的键key的列表

d.values() #返回字典d的值value的列表

d.items() #返回字典d的(key,value)对的列表

3.判断字典是否存在

4.字典对象的长度和比较

通过内置函数len(),可以获取字典的长度(元素个数)

字典对象也支持比较运算符(=、>),但只有 == 、!= 有意义

5.字典对象的方法

方法

说明

d.clear()

删除所有元素

d.copy()

浅拷贝字典

d.get(k)

返回键k对应的值,如果key不存在,返回None

d.get(k,v)

返回键k对应的值,如果key不存在,返回v

d.pop(k)

如果键k存在,返回其值,并删除该项目;否则导致KeyError

d.pop(k,v)

如果键k存在,返回其值,并删除该项目;否则返回v

d.setdefault(k,v)

如果键k存在,返回其值;否则添加项目k=v,v默认为None

d.update([other])

使用字典或键值对,更新或添加项目到字典d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python编程语言,有四种常用的集合数据类型,它们分别是列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)。列表是一种有序和可更改的集合,允许重复的成员。元组是一种有序且不可更改的集合,也允许重复的成员。字典是一个无序、可变且有索引的集合,其没有重复的成员。而集合是一种无序和无索引的集合,没有重复的成员。这四种集合数据类型在Python都有着不同的特点和用途。 在Python列表元组和字符串都属于序列,它们的元素都可以通过编号进行访问。而字典则属于映射,其元素是以键值对的形式存在的。集合则不属于序列或映射的任何一种,它是一种独立的数据类型,用于存储一组不重复元素。 总结起来,Python列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)都是常用的集合数据类型,它们各自有着不同的特点和用途。列表是有序和可更改的集合元组是有序且不可更改的集合字典是无序、可变且有索引的集合集合是无序和无索引的集合。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [浅谈python四种集合数据类型—【列表元组集合字典】](https://blog.csdn.net/QWERTYzxw/article/details/121479048)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [python 元组集合字典](https://download.csdn.net/download/weixin_38603219/13752298)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值