我是靠谱客的博主 老实舞蹈,最近开发中收集的这篇文章主要介绍python中元组和集合的区别_python集合、元组、字典,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

主要内容:

集合

元组

字典

小总结

主要内容:

2、集合

3、元组

4、字典

复习:

字符串和元组一样,只能读不能写。列表和字典可以嵌套任何东西,列表可以嵌套列表

L = list("hello")  # L = ['h', 'e', 'l', 'l', 'o']

集合、字典是无序的;列表、元组、字符串是有序的

集合、字典、列表是可以修改的;元组、字符串、数字是不能修改的

for 语句中的else 语句,意思是for中的循环结束后,再走else中的代码,字典中的键就相当于列表可中索引的数字

集合

集合是可修改的无序的不重复的序列,集合使用花括号{}

主要作用去重,把一个列表变成集合,就自动去重了

关系测试,测试两组数据之前的交集、差集、并集等关系

创建集合

语法:set(可迭代对象)

创建空集合:s = set()

View Code

fb5af051dd22b4cb7d330279a20a1af91ea3e8b6.png

s.add()  #添加集合

s.updata(可迭代对象)  # 添加多项

s.remove(x)  #删除指定元树x,如果x不存在则会发生错误

s.discard()  #和remove()一样,但是当删除指定元素不存在时,不会报错

s.clear()  #清空集合

s.pop()  #弹出最后一个书或弹出指定数

View Code77b7d6ad40a0ada399df91616d022ea6cda234d1.png

|  生成两个集合的并集

&  生成两个集合的交集

-  生成两个集合的补集

^  生成两个集合的对称补集(也就是两个集合的并集减去交集)

>  判断一个集合是另一个集合的超集

<  判断一个集合是另一个集合的子集

==,  !=  判断集合是否相同

in , not in   判断集合是否在另一个集合中

len(s),  sum(s),  max(s),  min(s),  sum(s),  any(s),  all(s)

View Codedffa53a5e6fe0ccaab8a0fbc39aa9627058a4a61.png

固定集合  frozenset

固定集合是不可变、无序的,含有唯一元素的不可迭代的集合,

作用:固定集合可以作为字典的键,还可以作为字典的值

固定集合的构造函数

frozenset()  创建一个空的固定集合

frozenset(iterable)  用可迭代对象创建一个固定的集合

固定集合的运算和集合的运算完全一样

集合推导式:  {表达式  for  变量  in  可迭代对象  [if  真值表达式]} # [ ]可以省略

集合推导式同样也可以嵌套

{x for x in range(10)}  #返回集合

元组

元组是不可修改的有序序列,元组使用小括号(),列表使用综括号[],可以存储任意的数据类型

元组只含一个元素时,需要在后面添加逗号,否者会被当做变量来处理

括号可以省略375213fa34519c38753a178c7c3df6e86dc93457.png

元组e56b9a990b388756ba787473e5e60e23614cf855.png

1.访问元组

访问元组c64e1d24c2a27345cecd8bf9d7821f0b79d0f8c4.png

2.删除元组

元组中的值是不能被删除的,但我们可以删除整个元组

删除整个元组ccb96a81ab5afee2c041a6ff0201d01be30e3c36.png

3.元组运算符4174743ee618fe5f1d85cd42355c18bc4775ead8.png

元组的相加和相乘是创建了一个新的元组,原来的元组并没有改变,也改变不了

4.元组索引,截取

L =('Google','Taobao','Runoob')05b9dca50e83f29b10e4ca9e158c4fbd20d6b808.png

5.元组的其他内置函数

len  max  min

tuple(列表)  将列表转换成元组d5cf1a3c148f1aaee7028e2d72189ec22f3a7968.png

reversed和sorted的使用228176ab8533b29828aa10c761963da0762b859d.png

字典

字典是可修改的无序序列,字典使用花括号{},可以存储任意类型对象,

字典由键值对组成{key:value}

键在字典中是唯一的,如果重复,后面的键值对会替换前面的。

键必须是不可变的类型对象,只能用数字、字符串、元组充当,列表就不行,值可以取任意的数据类型

键值对4f747b236569a26e8af92043b786f36e9ef9ab54.png

创建字典,

当键不存在时,创建键,并绑定对应的值,当键存在时,修改键绑定的值

创建字典0c02fe47f9eef2c1b5ff943c45e9cc85f0bc1e4a.png

访问字典,把键放入方括号中进行索引,但是访问字典中不存在的键会出错

访问字典070a25305cf8bb47c250fbfdd75ed0c2f16fbf07.png

删除字典、清空字典、删除字典中的键值对

删除字典、清空字典、删除字典中的键值对

75457042ccace1883456cb7f5f6823d873fff706.png

字典的内置函数

cmp(dict1, dict2)

# 比较两个字典元素。如果两个字典的元素相同返回0,

# 如果字典dict1大于字典dict2返回1,

# 如果字典dict1小于字典dict2返回-1。

len(dict)    # 计算字典元素个数,即键的总数。

str(dict)# 输出字典可打印的字符串表示。

type(variable)  # 返回输入的变量类型,如果变量是字典就返回字典类型。

字典方法

dict.clear()#删除字典内所有元素

dict.copy()#返回一个字典的浅复制

dict.fromkeys(seq[, val])#创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值

View Code0422e2a00fb0dfc7b4369cf37901dee381bb0441.png

dict.get(key, default=None)#返回指定键key的值,如果值不在字典中返回default值,default = None

dict.getabf3a8b3c56d091e9949ccc9df11f3b6291788c2.png

dict.has_key(key)#如果键在字典dict里返回true,否则返回false

dict.items()#以列表形式返回可遍历的(键, 值) 元组数组

dict.items()52fa18af72b9358117d7766ada1292d0092bfe31.png

dict.items()返回的是两个数,一个是字典的键,一个是字典的值,

dict.keys()#以列表返回一个字典所有的键

dict.keys871ec6fb9a08fc90427cd5d17b2ac5e820aad4ee.png

dict.setdefault(key, default=None)#和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

dict.update(dict2)#把字典dict2的键-值对更新到dict里

dict.values()#以列表返回字典中的所有值

pop(key[,default])#删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

site.pop()23a3068787ce7b049e61cf96e57d7f4c05867aac.png

popitem()#随机返回并删除字典中的一对键和值。

序列相关函数:

len(),max(),min(),sum(),any(),all(){全部都为真都返回真}

列表中的方法:

L.index(v)#返回元素对应的索引下标

L.insert(index,obj)

L.count(x)

L.remove(obj)

L.copy()

L.append(x)

L.extend(lst)#L +=lit

L.clear()

L.sort()

L.pop(索引)

L.reverse()#列表的反转

深拷贝deep copy,浅拷贝shallow copy

字符串的方法:

str.split() 分割 把字符串的空格用逗号分隔,返回列表

str.join() 连接 字符串的分隔符换成join里面的数

小总结

1. 数据类型:

数值类型:

int, float, complex, bool

容器:

不可变的容器

str, tuple, frozenset, bytes(字节串)

可变的容器

list, dict, set, bytearray(字节数组)

有序的容器

str(字符串) list(列表) tuple(元组) bytes(字节串) bytearray(字节数组)

无序的容器

set(集合) dict(字典)

推导式总结:

列表:[x for x in range(10)]返回列表

集合:{x for x in range(10)}返回集合

字典:{x:x**2 for x in range(10)}返回字典

2.值:

None, False, True

3. 运算符

算术运算符

+ - * / //(保留整数)  %(求余)  **(平方)

比较运算符:

< <= > >= == !=

in / not in

is, is not

布尔运算:

not(非), and(与), or(或)

+(正号) -(负号)

&(按位与) |(按位或) ^(按位异或)~(按位取反)

[] (索引,切片,键索引)

表达式:

1

1 + 2

max(1,2,3) # 函数调用是表达式

x if x > y else y, 条件表达式,把三条语句融合为一条

语句

表达式语句:

所有的表达式都可以单独写在一行,形成一个语句,例:

print("hello world")

1 + 2

赋值语句:

a = 100

a = b = c = 100

x, y = 100, 200  #交叉赋值

a[0] = 100  #序列索引赋值

dict['name'] = 'tarena' 字典赋值

del 语句

if 语句

while 语句

for 语句

break 语句

continue语句

pass 语句

内建函数:

len(x), max(x), min(x), sum(x), any(x), all(x)

构造函数(用来创建同类型的数据对象)

布尔值 bool(x), int(x), float(x), complex(x),

list(x), tuple(x), str(x), dict(x), set(x),

frozenset(x)

abs(x)

round(x[,n])#四舍五入

round(x[,[n])4abf456d9e7d00dc5c60a7e0e05a774ac8c05222.png

pow(x, y, z=None)

pow(x,y[,z])894fb81259f3279f05a91f34ac8579378e4b0322.png

bin(x),返回一个整形int或者长整形long int的二进制表示

bin(int)

print(bin(10))  #0b1010

oct(x)将一个整数转换成8进制字符串

oct(int)

print(oct(10))  #0o12

hex(x)将10进制整数转换成16进制,以字符串形式表示

hex(int)

print(hex(195))  #0xc3

chr(x),用一个范围在0~255整数(ASCII)作参数,返回一个对应的字符

chr(10进制或者16进制)bf10a3d289de6b095a06737f0c895c42aca73706.png

ord(x)以一个字符作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,

ord("一个字符")66fb025c6028f168b46d416f003876801d970cb0.png

range(start, stop, step)

input(x), print(x)

最后

以上就是老实舞蹈为你收集整理的python中元组和集合的区别_python集合、元组、字典的全部内容,希望文章能够帮你解决python中元组和集合的区别_python集合、元组、字典所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部