Python学习三|列表、字典、元组、集合的特点以及类的一些定义
此表借鉴于他人 | 定义 | 使用方法 |
列表 |
可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner','list'],7-9j] |
1.list(str):将str转换成list类型,str可以使字符串也可以是元组类型 2.aList.append('test'):追加元素到列表中去 3.del aList[1]:删除列表中下标为1的元素 del aList:删除整个列表 4.cmp(list1,list2):比较两个列表的大小 5.len(list):返回列表元素个数 6.sorted(list):使用字典序对列表中元素进行排序 7.reversed(list):倒置列表中的元素位置 8.list.count(obj):返回对象obj在list中出现的次数 9.list.extend(seq):把序列seq的内容添加到list中 10.list.insert(index,obj):在索引量为index的地方插入obj对象 11.list.pop(index=-1):删除并返回指定位置的对象,默认是最后一个对象 12.list.remove(obj):从list中删除obj对象 |
元组 |
可以包含不同类型的对象,但是是不可变的,不可以在增减元素,用()来定义 eg:aTuple=(123,'abc',4.56,['inner','list'],7-9j) |
1.tuple(obj):将对象obj转换成tuple对象,obj可以是任意字符串或者列表 2.适用于列表的del,cmp,len,max,min方法也适用于tuple,但是由于元祖是不可变的,替换、添加、排序等不可实现 |
字典 |
键值对,用{}来定义 eg:aDict={'name':'cynthia','age':18} |
1.dict1=dict((['x',1],['y',2])):dict()创建字典 2.dict1={}.fromkeys(('x','y'),-1):fromkeys()创建一个默认字典,字典中元素具有相同的值 3.dict1.keys():获取字典的键值列表 4.dict1.has_key('x'):判断字典中是否有‘x'键值,返回bool型 5.dict.get(key,default):返回键值key的值,若是key不存在,返回default的值 6.dict.items():返回键值对列表值 7.dict.values():返回字典中所有值的列表 8.dict.update(dict2):将dict2的键值对列表添加到字典dict中去 9.dict.pop(key):返回键值key的value 10.setdefault():类似get方法,能够获得给定key的value,此外setdefault还能在自动重不含有给定key的情况下设定相应的key-value 11.clear():清除字典中所有的项。原地操作,无返回(或说返回值为None) 12.copy():返回具有相同key-value的新字典,为浅复制(shallow copy) |
集合 |
set() 可变集合 frozenset() 不可变集合 |
方法(所有的集合方法): s.issubset(t) 如果s是t的子集,返回True,否则返回False s.issuperset(t) 如果s是t的超集,返回True,否则返回False s.union(t) 返回一个新集合, 该集合是s和t的并集 s.intersection(t) 返回一个新集合, 该集合是s和t的交集 s.difference(t) 返回一个新集合, 该集合是s的成员, 但不是t的成员, 即返回s不同于t的元素 s.symmetric_defference(t) 返回所有s和t独有的(非共同拥有)元素集合 s.copy() 返回一个s的浅拷贝, 效率比工厂要好 方法(仅适用于可变集合):以下方法参数必须是可哈希的 s.update(t):用t中的元素修改s,即s现在包含s或t的成员 s.intersection_update(t):s中的成员是共同属于s和t的元素 s.difference_update(t):s中的成员是属于s但不包含在t中的元素 s.symmetric_difference_update(t):s中的成员更新为那些包含在s或t中,但不是s和t共有的元素 s.add(obj):在集合s中添加对象obj s.remove(obj):从集合s中删除对象obj,如果obj不是集合s中的元素(obj not in s),将引发keyError错误 s.discard(obj):如果obj是集合s中的元素,从集合s中删除对象obj s.pop():删除集合s中得任意一个对象,并返回它 s.clear():删除集合s中的所有元素 |
以上是python的列表、元组、字典、集合的一些区别于介绍。
类的定义:
class Worker:def __init__(self,name,pay):#__init__是构造函数print('Worker的构造函数')self.name = nameself.pay = paydef lastName(self):return self.name.split()[-1]def giveRaise(self,percent):self.pay*=(1.0+percent)print(self.pay)def __del__(self):#__del__是析构函数print('Worker的析构函数')
注意:1、self的存在相当于c++中的self指针,java、c#中的this,用来区别类方法和普通方法
2、构造函数与析构函数作用相反(一个是创建对象自动调用,一个是销毁对象自动调用),init与del的左右均有两个下划线
转载于:https://www.cnblogs.com/wlovet/p/7975544.html
Python学习三|列表、字典、元组、集合的特点以及类的一些定义相关推荐
- Python学习 数据结构列表字典元组
本章节我们主要结合前面所学的知识点来介绍Python数据结构. 1.元组结构(Tuple) 元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串.数字甚至元组.元组创建后不能修改. 元组通常 ...
- 【python学习】列表、元组、字典、集合(详解)
关注作者,持续阅读作者的文章,学习更多知识! https://blog.csdn.net/weixin_53306029?spm=1001.2014.3001.5343 一.列表 列表(list)是P ...
- Python入门(三) 列表和元组
Python 列表和元组 类似C语言的数组: 列表 列表的类型(list): 列表的添加 列表的删除 列表的分片(拷贝) ':' 列表的拼接 列表的比较 列表的多次增加(同一个数据) 列表的查找 列表 ...
- Python学习心得——列表和元组的操作方法
列表(list) 再三考虑,我决定用代码来做一个总结(可能并不完善,若以后学到更多的再进行补充),如下: - 对列表的简单操作 #!/usr/bin/env python #-*- coding:ut ...
- python学习笔记列表和元组(三)
列表(list) 是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表.列表是可变的(mutable)--可以改变列表的内容. 对应操作: 1.查([]切 ...
- Python学习三——列表
1.列表简介 列表由一系列按特定顺序排列的元素组成,并用逗号来分隔其中的元素.如: alphabet=['a','b','c','d'] print(alphabet) 2.访问列表元素 索引从0 开 ...
- python元组读取到列表_Python 学习笔记(1)Python容器:列表、元组、字典与集合...
Python容器:列表.元组.字典与集合 列表: 1.列表 的创建 使用[ ] 或者list()创建列表:empty_list = [ ] 或者 empty_list= list() 使用list() ...
- 第三章 Python容器:列表、元组、字典与集合
3.1 列表和元组 除字符串以外,Python还有另外两种序列结构:元组和列表.他们都可以包换0个或多个元素,元组并不要求所含元素的种类相同,每个元素可以是各种类型的Python对象. 元组是不可变的 ...
- python集合和列表、安从小到大的顺序组合成一个字典_第3章 Python容器:列表、元组、字典与集合...
3.1 列表和元组 除字符串外,Python 还有另外两种序列结构:元组和列表.它们都可以包含零个或多个元 素.与字符串不同的是,元组和列表并不要求所含元素的种类相同,每个元素都可以是任 何 Pyth ...
- Python学习第七课-元组字典集合
Python学习第七课-元组&字典&集合 一.元组 1.1元组简介 1.2元组的拆包 1.3字符串拆包 1.4列表的拆包 1.5拆包练习 二.字典的简介 2.1介绍 2.2操作 三.字 ...
最新文章
- linux 查询替换文件内容吗,Linux 下查询文件的方法 替换文件内容
- QML基础类型之color
- 企业移动办公市场格局将定 随办如何突围?
- SAP Cloud for Customer根据Accouunt自动带出Sales Unit的配置
- [html] 使用div+css进行布局有什么好处?
- 程序员的三门课之项目管理篇
- keil MDK中如何生成*.bin格式的文件
- python中的单例模式_Python单例模式
- Spring启动的流程
- 斐波那契java编写_请编写一个Java程序的斐波那契数
- 关于安卓刷机的一些基础知识及术语
- 百度信誉认证体系初级实名认证即将取消,这意味着什么?
- BMZCTF Ook
- android模拟器 对比,安卓模拟器多开用哪个模拟器好?实测数据对比哪个好用
- 逆向工程实验——pre6(汇编、Android逆向、RSA算法破解)
- V全自动加粉工具(日加一万不是梦) V加粉一直手动绝对是老大难问题,本工作室推出强大的工具版本(详细可通过演示视频了解)
- c语言课后答案上海交通,上海交通大学继续教育学院2012春——程序设计(C)作业1(有答案)...
- 2020.4.29华为笔试【华为校园招聘 软件】
- Maven多模块项目编译失败:依赖程序包xxx不存在
- nanosim 仿真
热门文章
- 用大数据看中国美食咸甜之战
- XAF应用开发教程(七)外观控制模块
- 使用vue-cli+axios配置代理进行跨域访问数据
- unix解释器文件详解
- Codeforces Round #277 (Div. 2)
- ubuntu软件中心打不开Python error
- TortoiseSVN的设置
- jira-enterprise-3.6.4-standalone + confluence-2.2.8 + MySQL5.0 安装破解全过程
- Go语言实战 (William,Kennedy 等著)
- 多线程生产者,消费者例题