首页 文章 精选 留言 我的

精选列表

搜索[python解释器],共10000篇文章
优秀的个人博客,低调大师

初学Python——集合及其运算

一、集合定义及其功能 集合是一个无序的、不重复的数据组合,和字典列表一样也是一种数据类型。 集合两个最主要的功能:①去重(把一个列表变成集合,就自动去重了) ②关系测试(测试两组数据之间的交、并、差集等关系) 二、关系测试 首先,如何创建集合? 两种方式:(1)直接创建 a=set([1,8,2,3,5,4,5,3]) (2)将列表转化成集合 list1=[5,9,7,3,6,6,7,95,78,65,102] #创建列表 list1=set(list1) #将列表转化成集合 在这里需要说明,集合是无序的,尽管将集合a输出:print(a),得到的结果是 看上去好像自动做了排序,其实不然,只是集合的数据太少了,输出list1就不是这样了: 1.取两个集合的交集: 两种写法:①intersection()方法 print(list1.intersection(a)) print(a.intersection(list1)) 这两种写法没有任何区别,输出结果都是 ②数学表示 print(list_1 & a) 2.取并集: 也是两种方法:①union()方法 print("union:",a.union(list_1)) ②数学表示 print("union:",a|list_1) 输出结果: 3.取差集: 亦是两种方法:①difference()方法 print("difference:",list_1.difference(a)) #差集(list_1减去交集) print("difference:",a.difference(list_1)) #差集(a减去交集) ②数学表示 print("list_1 - a :",list_1-a) print("a - list_1 :",a-list_1) 运行结果: 4.判断是否是父集和子集的关系: issubset()方法和issuperset()方法 print("issubset:",list_1.issubset(a)) #判断list_1是不是a的子集 print("issuperset:",a.issuperset(list_1)) #判断a是不是List_1的父集 当然,肯定都不是,再创建一个集合试一试 list_2=set([1,3,5]) print(list_2.issubset(a)) #判断list_2是不是a的子集,是则返回True print(a.issuperset(list_2)) #判断a是不是list_2的父集,不是返回False 运行结果: 5.对称差集: 对称差集是指两个集合的并集减去交集 ①symmetric_difference()方法 print("symmetric_difference:",a.symmetric_difference(list_1)) ②数学表示 print("a^list_1:",a^list_1) 运行结果: 6.判断是不是相交 list_3=set([50,30,60]) print("isdisjoint:",a.isdisjoint(list_3)) #判断两个集合之间的关系是不是相交,如果相交返回False print("isdisjoint:",a.isdisjoint(list_2)) 运行结果: 三、集合的操作 1.添加数据 添加一项: a.add("abc") #添加一项 添加多项: a.update([20,30,90]) 2.删除数据 ①remove()方法 a.remove("abc") #删除字符“abc” ②pop()方法 print(a.pop()) #随机删除,并返回删除的值 ③discard()方法 a.discard(30) #删除数据 3.获取集合的长度 print(len(a)) #集合 a 的长度 4.判断数据是否是集合的成员 print(30 in a) #判断30是否是集合a的成员(列表、字典、集合、字符串都可以用这种方法来判断) print(30 not in a) #判断30是否不是集合a的成员

优秀的个人博客,低调大师

初学Python—列表和元组

一、什么是列表 列表是一系列数据的集合 二、列表的引用 首先定义一个列表 1 names=["alex","bob","alice","jim"] View Code 列表引用: name[0] name[1] print(name[3]) View Code 三、列表操作 1.查询列表元素 ①利用下标输出列表元素 print(names[0]) #输出列表第一个元素 print(names[0:5]) #输出列表前五个元素(顾头不顾尾) print(names[-1]) #输出列表最后一个元素 print(names[-4:-1])#输出列表倒数第四个至倒数第二个元素的值(顾头不顾尾) print(names[-3:0])#输出列表最后三个元素print(nemas[::3]) #从第一个元素开始,每三个元素输出一个(隔两个元素输出一个元素) ②查找元素所在位置:index方法 print(names.index("alex")) #查找元素“alex”的下标,输出为0 ③统计相同元素的个数:count方法 print(names.count("alex")) #输出“alex”元素的个数 2.增添列表元素 有两种方法,一是append()方法,插入列表末尾;二是insert()方法,可以插入特定的位置 names.append("luxun") #将元素插入列表的末尾 names.insert(2,"mayun") #将元素插入列表下角标为2的位置 3.修改列表元素 names[1]="lihua" #将第二个元素修改 4.删除列表元素 有三种方法 ①用“del”,此关键字不是列表特有的,可以用来删除变量、列表、字典等。 del names[4] #删除下标为4的元素 ②pop()方法,根据下标删除元素 names.pop(5) #删除下标为5的元素,如果括号空着,默认删除最后一个元素 ③remove()方法,根据元素内容删除 names.remove("alex") #删除此元素 5.合并列表 extend()方法 list1=[1,2,3] list2=[4,5,6] list1.extand(list2) #将list2列表合并到list1上 此方法只会改变list1,list2并不改变 6.列表嵌套 names=["zhao","qian","sun",["zhang","liu","ma"],"li"] #取出“liu” print(names[3][1]) 增删改查同上 7.列表的复制 这里详细介绍三种 ①copy()方法:浅copy 先看形式 names=["zhao","qian","sun",["zhang","liu","ma"],"li"] names2=names.copy() #将names复制一份给了names2 print(names2,names) 输出完全一样,没问题 继续操作: names[1]="QIAN" names[3][2]="MA" print(names,names2) 看清楚了,所有的操作是对names的,names2的元素会保持不变吗?来看结果 发现了什么?names肯定是按照我们的操作变化了,names2呢?既没有保持不变,也没有完全跟names保持同步 而是:外层的列表元素不受影响,内层列表元素跟着改变。这就是浅copy ②copy.deepcopy()方法,引入copy模块:深copy import copy names=["zhao","qian","sun",["zhang","liu","ma"],"li"] names2=copy.deepcopy(names) #将names深copy一份给了names2 print(names2,names) 同样的操作 names[1]="QIAN" names[3][2]="MA" print("names:",names) print("names2:",names2) 结果奉上: 深copy出来的names2是完全独立于names的,相互之间不受干扰。 ③类似于赋值操作的复制 names2=names #直接将其赋值给names2 进行上述操作后,结果如下 无论对谁进行操作,两者的内容保持同步和一致 8.列表排序 ①列表反转:severse()方法 names.severse() #将列表反转 print(names) ②列表排序:sort()方法 naems.sort() #将列表排序 print(names) 排序规则:按照每个字符串首位,特殊符号>数字>大写字母>小写字母,前提是数据类型是字符型。 注意:不同的数据类型无法排序! 9.列表循环 推荐用for循环 for i names: print(i) 10.清空列表、删除列表 清空列表用clear()方法 names.clear() 删除列表用 del del names 10.获取列表长度 ①names._len_()方法 ②len(names)函数 都是获取列表中元素的个数 四、元组 元组就是只读列表 定义一个元组: names=(1,2,3,4,5) 只能对它进行查询访问,不能增、删、改。当然,可以删除整个元组,即 del names

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册