我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python集合常用方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python集合常用方法

新建: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()

新建: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)

新建: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。

新建: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;


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python集合常用方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python集合常用方法

新建:list = []不要求内部元素类型相同查、改:下标索引:list[0]、list[-1]多维列表:list[axis1_index,axis2_index],通过不同轴上的坐标获取删:删除指定下标元素:del(list[1])删:删
2023-01-31

python中set集合常用方法

今天开始学习python的集合相关方法的使用:#集合的定义:集合是无序的,不重复的数据集合set={"123","456","11"}#add:向集合中填加元素Add an element to a set.set.add(563)prin
2023-01-31

Python集合的常用方法有哪些

这篇“Python集合的常用方法有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python集合的常用方法有哪些”文章吧
2023-06-29

python集合常用操作方法有哪些

本篇内容介绍了“python集合常用操作方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!集合的特性无序、不重复、可迭代常用api创建
2023-07-04

Java集合的常用方法都有哪些呢?(Java集合的常用方法有哪些 )

在Java编程中,集合是一种非常重要的数据结构,它提供了一种存储和操作一组对象的方式。Java提供了多种集合框架,包括List、Set和Map等。每个集合框架都有其自己的特点和用途,下面我们将介绍Java集合的常用方法。一、List集合的常用
Java集合的常用方法都有哪些呢?(Java集合的常用方法有哪些  )
Java2024-12-22

Pandas库常用方法、函数集合

Pandas是Python数据分析处理的核心第三方库,它使用二维数组形式,类似Excel表格,并封装了很多实用的函数方法,让你可以轻松地对数据集进行各种操作。
PandasPython2024-11-30

java集合Collection常用方法解读

这篇文章主要介绍了java集合Collection常用方法解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-03-13

laravel常用集合方法是什么

本篇内容主要讲解“laravel常用集合方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“laravel常用集合方法是什么”吧!laravel常用集合方法有:filter()、search
2023-06-29

jquery常用技巧及常用方法列表集合

jquery常用技巧及常用方法列表集合,学习jquery的朋友可以收藏下。方便查找学习。
2022-11-21

java集合Collection常用方法有哪些

这篇文章主要介绍了java集合Collection常用方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇java集合Collection常用方法有哪些文章都会有所收获,下面我们一起来看看吧。为什么要有集合
2023-07-05

盘点Java集合中集合排序操作的常用方法

本文主要介绍了Collection工具类,Collection常用的排序方法,例如把集合中的元素进行添加、反转、按自然顺序排序、乱序、集合中的元素交换位置

Python集合set()方法如何使用

这篇文章主要讲解了“Python集合set()方法如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python集合set()方法如何使用”吧!在python3中按数据类型的可变与不可变
2023-06-29

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录