精华内容
下载资源
问答
  • python集合常用方法

    万次阅读 2016-12-17 23:47:32
    通过类似“切片”的方法来表示,选取多维数据中一个维度作为arr的第一坐标轴,观察数据在这个维度的下标范围,有m个下标就有m个“切片”,即把下标取某个值index时的所有数据作为arr在坐标axis0下的对应坐标index的...

    一、列表

    新建:list = []

    不要求内部元素类型相同

    查、改:下标索引:list[0]、list[-1]

    多维列表:list[axis1_index,axis2_index],通过不同轴上的坐标获取

    删:删除指定下标元素:del(list[1])

    删:删除并返回指定下标的元素: list.pop(index)

    删:删除列表中此value的第一个匹配项:list.remove(value)

    拼接两个列表中的"元素"(最外层括号下一级的元素):[1,2]  + [3,4]  or [[1,2]] + [[3,4]] or [1,2] + [[3,4]]

    重复列表中的“元素”(最外层括号下一级的元素):[1,2]*3  or [[1,2]]*3  or  [(1,2)]*3

    元素是否在列表中(最外层括号的下一级元素):1 in [1,2,3]   or  [1,2] in [[1,2],1,2,3]  true or [1,2] in [[2,1],1,2,3]  false

    增:列表追加一个or多个元素:list.append(elem)   or   list.extend(list2)

    排序:list.sort()

    二、元组

    元组的元素无法修改;元组的元素的元素可以修改

    新建:tuple = () or tuple1 = (1,2,3) or tuple2 = (1,[1,2],3)

    增:不能

    删:不能

    改:不能  tuple1[1] = 5 错 , tuple2[1][0] = 5 正确

    查:下标索引:tuple(index)

    拼接 :(1,2) + (3,4)

    重复:(1,2)*4

    三、字典

    新建:dict = {} or dict = {key:value,.....}   key类型:string、tuple、frozenset、数字;value类型;任何类型

    增:dict[key] = value

    批量增(or批量改同key对应的value值):dict.update(dict2)

    删:del(dict[key])

    查:dict[key]  or dict.get(key,default= value)

    改:dict[key] = value

    判断是否在字典的键中:dict.has_key(key)

    列表形式返回字典的键or值:dict.keys() or dict.values()

    列表形式返回字典的(key,value)元祖:dict.items()

    四、set集合

    新建:set1 = set() or set1 = {1,2,3}  value类型:string、tuple、frozenset、数字等不可变类型;

    增:set1.add(5)  

    增加多个:set.update([5,6,7,8])

    删:set1.remove(1)

    查:无法通过下标索引

    改:不可变类型无法修改元素

    与操作:set1 & set2

    或操作:set1 | set2

    与非操作:set1 ^ set2

    减:set1 - set2

    判断是否是子集or超集:set1.issubset(set2)  or set1.issubset(set2)

    转变成list or tuple: list(set1) or tuple(set1)

    五、array数组

    新建:arr = array([1,2,3,4])  传入序列即可

    查:1、通过下标获取arr[1];2、通过下标范围获取,arr2=arr1[0:2],共享变量空间;3、通过下标列表、下标数组获取arr[[1,2,3]]、arr[array([0,1,2])],新生成arr和原来的不共享变量空间;4、通过布尔数组获取arr[array([True,False,True])],把布尔数组中True元素对应的下标组成的序列list作为输入,只获取arr中对应list指定位置的元素,不共享变量空间;5、通过布尔列表获取arr[[True,False,True]],把True当成1、False当中0,获取arr中的元素,不共享空间;无意义

    注意:

    1、通过下标范围获取时list和array的差异:

    list只能通过下标or下标返回获取通过下标范围获取新列表 L2 = L1[0:2],L1和L2不共享变量空间,修改L2中值不改变L1中的值;

    array中通过下标范围获取新列表arr2=arr1[0:2],arr1和arr2共享变量空间,修改arr2中值时arr1中的值也改变;

    2、多维数组

    arr[axis1_index,axis2_index]或者arr[axis1_sequence,axis2_sequence2] or arr[ [axis1_sequence,axis2_sequence2] ]获取,返回元素的结构和axis1_sequence结构相同。

    运算:

    1、基本数值运算:

    arr1 +/-  arr2 两数组对应位置元素相减, arr1 *// arr2 两数组对应位置元素相乘除, arr1+-*/2 数组中所有元素加减乘除2,arr**2 数组中所有元素取平方,arr>10 数组中元素大于10对应位置返回True,否则返回False; 

    2、对某一坐标方向运算

    如:arr1.sum(axis=0),axis.min(axis=0),实际使用时,先将维度有物理意义的数据映射到对应的多维的array中,你知道哪个维度对应array哪个axis,因此你要对哪个维度进行操作时,axis赋值对应维度就行。

    难点:

    a、如何用多维array来表示多维数据

    通过类似“切片”的方法来表示,选取多维数据中一个维度作为arr的第一坐标轴,观察数据在这个维度的下标范围,有m个下标就有m个“切片”,即把下标取某个值index时的所有数据作为arr在坐标axis0下的对应坐标index的数组元素,如维度一有m个index取值,对应index的数据取值为arr0、arr1、,,,、arrm,则arr[arr0_axis0,arr1_axis0,...,arrm_axis0];然后依次循环其它维度,直到取完所有维度的数据。

    b、直接对多维array在某一axis上操作,大脑不容易直观给出结果;

    数字映射到2维平面or3维空间中,就可以感性的观察到数据的结构,从而大脑进行相应的计算,得出结果。但是,用arr表示时,其空间结构不直接、明了;当然若果是直接由实际数据映射过来的,想对哪个维度操作直接选择对应维度的axis就行。如果只是观察到了多维arr,则需要变换下思维。

    对sum(axis=m)求和,即在第m维度上求和,那么实际物理意义是求和的数据在其它维度坐标下的index都相同,但是对应到arr这种括号表示的数据中,则需要从最外层往内部寻找,找到axis=m对应的括号[],然后对[]内部的元素arr1、arr2、...、arrm进行相应的操作,返回一个同结构的元素arr_res;(1)求和:把同结构的arri加起来,合成一个arr_res;(2)求最大、最小值:把所有同结构的元素arri进行比较,找出每个位置的最大、最小值,返回一个arr_res。

    六、matrix矩阵

    新建:m = matrix(arr1/list1) or m = matrix(arr2/list2) 传入一维or二维数组/列表,生成的矩阵永远是二维的;
    查:1、下标获取值m[i,j]; 2、下标范围获取m[0:2,0:2],返回一个矩阵;(共享空间)  3、下标序列获取m[[0,1],[0,1]],返回矩阵;(不共享空间)4、通过布尔数组来获取;5、通过布尔列表来获取;
    运算:
    m+-*/value都是对矩阵中每个元素操作;m1+-m2 对两个矩阵对应元素操作;m1*m2 矩阵乘法;multiply(m1,m2),两个矩阵对应元素相乘;

    七、相互转换

    matrix<——list<——>array<——>matrix,matrix转换成list,需要先转换成二维array再转换成二维list,list可以直接转换成matrix;


    展开全文
  • 集合:无序的数据类型 添加顺序和在集合中的存储顺序是不一样的 (1)增加(一个元素与多个元素) (2)删除 (3)交集 (4)并集 ...注:差集(a-b)是指a中的那些...python常用方法 枚举——返回的是一对值(索...

    集合:无序的数据类型
    添加顺序和在集合中的存储顺序是不一样的

    • (1)增加(一个元素与多个元素
      在这里插入图片描述
    • (2)删除
      在这里插入图片描述
    • (3)交集
      在这里插入图片描述
    • (4)并集
      在这里插入图片描述
    • (5)差集
    注:差集(a-b)是指a中的那些元素在b集合中不存在
    	(b-a)是指:b中的那些元素在a集合中不存在
    

    在这里插入图片描述

    • (6)对等差分(并集-差集)
      在这里插入图片描述
    • (7)是否子集
    • (8)是否超级
    • (9)是否不相交
      在这里插入图片描述
      python的常用方法
      枚举——返回的是一对值(索引,value值)
      在这里插入图片描述
    展开全文
  • python集合常用方法

    2020-12-23 20:18:27
    python之列表操作常用方法: s = [1,2,3] t = [4,5,3] s.isdisjoint(t)#判断是否有是否有交集,有返回false,否则返回true s.add(999)#添加一项,无序 s.update([11,22,44])#添加了三项 s.remove(‘h’)#删除一项 ...

    python之集合常用方法:

    s = [1,2,3]
    t = [4,5,3]
    s.isdisjoint(t)#判断是否有是否有交集,有返回false,否则返回true
    s.add(999)#添加一项,无序
    s.update([11,22,44])#添加了三项

    s.remove(‘h’)#删除一项
    len(s)#长度
    x in s #测试x是否是s的成员
    s.issubset(t)
    s <= t#测试是否s中的每一个元素都在t中
    s.issuperset(t)
    s >= t#测试是否t中的每一个元素都在s中
    s.union(t)
    s | t#返回一个新的set,包含s和t中的每一个元素
    s.intersection(t)
    s & t #返回一个新的set包含s和t的公共元素
    s.difference(t)
    s - t#返回一个新的set包含a中但t中没有的元素
    s.sysmetric_difference(t)
    s ^ t #返回一个新的set包含s和t中不重复的元素
    s.copy()#返回set s的一个浅复制

    s.pop()#删除任意元素
    s.remove()#删除的元素不存在时报错
    s.discard(“99”)#删除的元素不存在时返回none

    展开全文
  • python集合常用方法

    2019-12-19 09:18:51
    python中,集合存储的元素是无序的且不能重复,因此可以作为字典的键。 集合有两种不同类型:可变集合和不可变集合。 可变集合可以添加或删除元素,因此所存储的元素不能被哈希; 不可变集合不能添加或删除...

    什么是集合

    在python中,集合存储的元素是无序的且不能重复,因此可以作为字典的键。
    
    集合有两种不同类型:可变集合和不可变集合。
    可变集合可以添加或删除元素,因此所存储的元素不能被哈希;
    不可变集合不能添加或删除元素,但元素是可哈希的,可以作为字典的键。
    

    创建集合

    # 集合是一个可变的数据类型
    # 添加顺序和存储顺序是不一样的
    s = {4,5,6,7,8,9,2}
    print(s)
    

    在这里插入图片描述
    结果

    在这里插入图片描述

    添加

    添加一个元素

    # 添加
    s = {4,5,6,7,8,9,2}
    s.add(10)
    s.add(0)
    print(s)
    

    在这里插入图片描述
    结果
    在这里插入图片描述

    添加多个元素

    # 添加多个元素
    s = {4,5,6,7,8,9,2}
    s.update({3,6,7,8})
    print(s)
    

    在这里插入图片描述
    结果
    在这里插入图片描述

    删除

    删除一个元素
    pop表示弹出该元素,且能收到弹出的值

    # 删除
    s = {4,5,6,7,8,9,2}
    a = s.pop()
    print(s)
    print(a)
    

    在这里插入图片描述
    结果

    在这里插入图片描述
    删除指定元素

    s = {4,5,6,7,8,9,2}
    # 删除指定的元素
    s.remove(9)
    print(s)
    

    在这里插入图片描述
    结果
    在这里插入图片描述

    排序

    # 排序
    s1 = {2,3,1}
    sorted(s1)
    print(s1)
    s2 = {2,3,4}
    

    在这里插入图片描述
    结果

    在这里插入图片描述

    并集

    # 并集
    s1 = {2,3,1}
    s2 = {2,3,4}
    print('并集:',s1.union(s2))
    print('并集:',s1 | s2)
    

    在这里插入图片描述

    结果

    在这里插入图片描述

    交集

    # 交集
    s1 = {2,3,1}
    s2 = {2,3,4}
    print('交集:',s1.intersection(s2))
    print('交集:',s1 & s2)
    

    在这里插入图片描述
    结果
    在这里插入图片描述

    差集

    # 差集
    s1 = {2,3,1}
    s2 = {2,3,4}
    ##  s1和s2的差集 s1中有哪些s2中没有的元素
    print('差集:',s1.difference(s2))
    print('差集:',s1 -s2)
    

    在这里插入图片描述
    结果

    在这里插入图片描述

    对等差分:并集- 交集

    # 对等差分:并集- 交集
    s1 = {2,3,1}
    s2 = {2,3,4}
    print('对等差分:',s1.symmetric_difference(s2))
    print('对等差分:',s1 ^ s2)
    

    在这里插入图片描述
    结果

    在这里插入图片描述

    子集

    s3 = {'westos','redhat','python'}
    s4 = {'redhat','westos','linux'}
    # s3是否是s4的子集
    print(s3.issubset(s4))
    # 两个集合是不是不相交
    print(s3.isdisjoint(s4))
    

    在这里插入图片描述
    结果
    在这里插入图片描述

    展开全文
  • python-集合常用方法

    2021-05-27 12:53:15
    1、集合是什么? 集合(set)是一个无序的不重复元素序列 常用来对2个列表进行并集差集的处理、列表去重 集合与列表一样,支持所有数据类型 {'name','10',1} 集合与列表的区别? 功能 列表 集合 顺序 有序 ...
  • Python集合常用方法

    2019-10-08 07:17:30
    注释很详细 collection={1,2,"apple","orange","cat"} # 查看一个数是否在集合中 in print("Tom 是否在集合中:","Tome" in collection) ...# 集合初始化时用set() pets={}是代表初始化了一个字典...
  • set()是Python中的集合集合:是一个无序且不重复的元素集合。从定义中就可以看出,集合的特点:1.无序;2.元素不重复。 函数/方法名 等价操作符 说明 所有集合类型 len(s) 集合基数:集合...
  • python3常用方法集合

    2017-09-02 21:19:28
    1、title():以首字母大写的方式显示每个单词 2、lower():将字符串全部改为小写 3、upper():将字符串全部改为大写 4、rstrip():删除字符串末尾的空白 5、lstrip():删除字符串开头的空...
  • 文章目录1 什么是集合2 集合的创建3 集合的增删改3.1 add的功能3.2 update的功能3.3 remove的功能3.4 clear的功能3.4 del删除集合4 集合的差集—difference函数5 集合的交集—intersection函数6 集合的并集-union...
  • Python集合和函数以及常用方法案例一级目录二级目录三级目录 一级目录 二级目录 三级目录
  • 今天开始学习python集合相关方法的使用:#集合的定义:集合是无序的,不重复的数据集合set={"123","456","11"}#add:向集合中填加元素Addanelementtoaset.set.add(563) print(set)#Clear:清除集合中的元素Remove ...
  • 测试—Python集合和函数以及常用方法案例 集合 简单介绍 集合的创建 数据添加 数据删除 集合的交集和并集 公共方法 + * in python内置函数 len() max() min() del() 简单案例 集合 简单介绍 集合是无序的,集合中的...
  • 一、集合常用方法总结 二、定义 1、语法 >>> name_1 = [1,2,3,4,7,8,7,10] #把列表转换为集合 >>> name_1 = set(name_1) #转换后,去重 >>> print(name_1,type(name_1)) {1, 2, 3, 4, 7, 8, 10}  三、关系测试 ...
  • 使用环境:需要先安装PyCharm(请自己百度下载安装),以及然后官网上下载Python 2.7版本,以及Python 3.7版本后,安装在自己的电脑上。 使用步骤: ...目的:帮助理解复杂集合对象Python中的具体使用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,225
精华内容 490
关键字:

python集合常用方法

python 订阅