Python__组合数据类型
组合数据:集合类型、序列类型(元组类型、列表类型)、字典类型
集合:
定义:集合是多个元素的无序组合。(无序,唯一,Python中要求放入集合中的数据类型是不可变的)。
集合用大括号 {}表示,元素间用逗号分隔
创建集合用{} 或者 set()
集合操作符:S | T (并集) S - T (差集) S & T(交集) S ^ T (补集)
判断子集关系:S<=T(或S<T) S>=T (或S >T) 返回True / False
增强操作符: S | = T ==> S = S|T
集合处理方法:对于集合S,我们可以使用的方法有:
S.add(x) 如果x不在S中,将x增加到S
S.discard(x) 移除S中元素x,如果x不在集合S中,不报错
S.remove(x) 移除S中的元素x,如果x不在集合S中,产生KeyError异常 (可以使用try-except方法捕捉异常)
S.clear() 移除S中所有元素
S.pop() 随机返回S的一个元素,若S为空产生KeyError异常
S.copy() 返回集合S的一个副本
len(S) 返回集合S的元素个数
x in S 判断S中是否包含元素x ,x 在集合中,返回True,否则返回False
x not in S
set(x) 将其他类型的变量x 转换为集合类型
集合应用场景:包含关系比较 数据去重
序列:
序列类型定义: 序列是具有先后关系的一组元素。
序列是一维元素向量,元素类型可以不同
类似数学元素序列:S0,S1,...,Sn-1
元素间由序号引导,通过下标访问序列的特定元素。
序列是一个基类类型,我们一般不直接使用序列,而是使用其衍生出来的:字符串类型、元组类型、列表类型。序列的所有操作,在字符串类型、元组类型、列表类型中都是试用的,同时,字符串、元组、列表又有其独有的操作能力。
序号的定义:序号具有正向递增和反向递减的
序列处理函数及方法:
6个操作符: x in s : 如果x 是序列s的元素,返回True,否则返回False
x not in s:
s + t : 连接两个序列 s 和 t
s * n ( n * s) : 序列s 复制 n 次
s[i] :索引 返回s中第i 个元素,i是序列的序号。
s[i:j:k] 切片, 返回序列中,i到j以k为步长的子序列 (s[::-1] 序列取反)
5个函数和方法:
len(s) 返回序列s的长度
min(s) 返回序列s的最小元素,s中元素需要可比较,如果元素不可比较,将报错
max(s)
s.index(x) / s.index(x,i,j) 返回序列s从i到j第一次出现元素x的位置
s.count(x) 返回序列s中出现x的总次数
元组类型及操作:
元组定义:元组是序列类型的一种拓展。
元组是一种序列类型,一旦创建就不能被修改。
使用小括号()或者tuple()创建,元素间用逗号分隔
可以使用小括号或不适用小括号。 def func(): return 1,2 #这里返回值就是一个元组。
元组的操作:元组继承序列类型的全部通用操作
元组继承了序列类型的全部通用操作
元组因为创建后不能修改,因此没有特殊操作
使用或者不适用小括号
列表类型及操作:
列表类型定义: 列表是序列的一种扩展,十分常用
列表是一种序列类型,创建后可以随意被修改
使用方括号[] 或 list()创建,元素间用逗号分隔
可以使用或不适用小括号
列表类型操作函数和方法:
函数:
ls[i] = x 替换列表ls第i元素为x
ls[i:j:k] = lt 用列表lt 替换ls切片后所对应元素子列表
del ls[i] 删除列表ls中第i元素
del ls[i:j:k] 删除列表ls中第i到j以k为步长的元素
ls + =lt 跟新列表ls,将列表lt元素鞥家到列表ls中
ls * = n 更新列表ls,其元素重复n次
方法:
ls.append(x) 列表最后增加一个元素x
ls.clear() 删除列表ls中所有的元素
ls.copy() 生成一个新的列表,赋值ls中所有元素
ls.insert(i,x) 在列表ls的第i位置增加元素x
ls.pop(i) 将列表ls中第i位置元素取出并删除该元素
ls.remove(x) 将列表ls中出现的第一个元素x删除
ls.reverse() 将列表中的元素反转
字典:
映射是一种键(索引)和值(数据)的对应
字典类型是映射的提现 字典是键值对的集合,键值对之间无序
采用大括号或者dict()来创建,键值对用冒号表示
创建一个空字典 直接使用大括号
字典类型操作函数和方法
del d[k] 删除字典d中键k对应的数据值
k in d 判断k是否在d中
d.keys() 返回字典d中所有键信息
d.values() 返回所有值信息
d.items() 返回所有键值对信息
d.get(k,<default>) 键值k存在,返回相应的值,不存在则返回<default>值
d.pop(k,<default>) 键k存在,则取出相应的值,不存在则返回<default>值
d.popitem() 随机重字典d中取出一个键值对,以元组形式返回
d.clear() 删除所有的键值对
len(d) 返回字典d中元素的个数
Python__组合数据类型的更多相关文章
- Python3组合数据类型(元组、列表、集合、字典)语法
一.序列类型(字符串,元组(),列表[]) 序列类型支持in,len(),分片[],迭代,5种内置序列类型:bytearray,bytes,list,str,tuple(元组). 1.元组可以嵌套(如 ...
- python的组合数据类型及其内置方法说明
python中,数据结构是通过某种方式(例如对元素进行编号),组织在一起数据结构的集合. python常用的组合数据类型有:序列类型,集合类型和映射类型 在序列类型中,又可以分为列表和元组,字符串也属 ...
- Python Revisited Day 03 (组合数据类型)
目录 第三章 组合数据类型 3.1 序列类型 3.1.1 元组 3.1.2 命名的元组 (collections.nametuple()) 3.1.3 列表 (查询有关函数点这) 3.1.4 列表内涵 ...
- Python字符串、组合数据类型练习
一.Python字符串练习 1.http://news.gzcc.cn/html/2017/xiaoyuanxinwen_1027/8443.html 取得校园新闻的编号. (这个方法就很多了,一般方 ...
- Python学习笔记(六)Python组合数据类型
在之前我们学会了数字类型,包括整数类型.浮点类型和复数类型,这些类型仅能表示一个数据,这种表示单一数据的类型称为基本数据类型.然而,实际计算中却存在大量同时处理多个数据的情况,这种需要将多个数据有效组 ...
- python组合数据类型和数据结构
//2019.12-071.pyhton里面组合数据类型主要有三种:集合(set).序列(字符串str.列表list and 元组tuple)和映射(字典dic)2.集合类型一般使用大括号{}来进行表 ...
- Python基础篇(四)_组合数据类型的基本概念
Python基础篇——组合数据类型的基本概念 集合类型:元素的集合,元素之间无序 序列类型:是一个元素向量,元素之间存在先后关系,通过序号进行访问,没有排他性,具体包括字符串类型.元组类型.列表类型 ...
- Python的组合数据类型
""" Python的组合类型: 序列类型:元素之间存在先后关系,可以通过索引来访问 列表: 元组: 字符串: 映射类型:用键值来表示数据 字典: 集合类型:元素是无序的 ...
- 笔记-4:python组合数据类型
1.字符串(str) 字符串是字符的序列表示, 根据字符串的内容多少分为单行字符串和多行字符串. 单行字符串可以由一对单引号(') 或双引号(")作为边界来表示, 单引号和双引号作用相同. ...
随机推荐
- 巧用XML配置校验导入Excel的列数据格式
<?xml version="1.0"?> <ColumnsSeting xmlns:xsd="http://www.w3.org/2001/XMLSc ...
- ProtoBuf序列化和反序列化方法
最近公司需要将以前的协议全都改成ProtoBuf生成的协议,再将结构体打包和解包过程终于到一些问题 ,无法使用Marshal.SizeOf计算结构体大小,最后找了一下ProtoBuf的文档,可以用它自 ...
- 知物由学 | 未来安全隐患:AI的软肋——故意欺骗神经网络
本文由 网易云发布. “知物由学”是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不会知道.“知物由学 ...
- js判断图片是否加载完毕
附件: https://www.jb51.net/article/102385.htm 问题: .offset().top和$(window).scrollTop()每次刷新页面后滚动的值有时候会不 ...
- git修改文件权限方式
查看Repository中文件权限 git ls-tree HEAD 100644 blob 018321abfbff52d175a788597f5b5f3f17f67dc7 .gitignore 1 ...
- Python小白学习之路(三)—【数字功能】【字符串功能】
数字(int)常见功能 在网络课上,老师把这些功能称为神奇的魔法,想要揭开魔法神奇的面纱,想要看看有什么招数,在Pycharm里敲击三个字母(int),按住Ctrl,将鼠标点在int上,这时鼠标会变成 ...
- function参数
expr_without_variable { Z_LVAL($$.u.constant) = ; zend_do_pass_param(&$, ZEND_SEND_VAL, Z_LVAL($ ...
- C#中ExecuteReader、ExecuteNonQuery、ExecuteScalar、SqlDataReader、SqlDataAdapter的区别
ExecuteNonQuery()执行命令对象的SQL语句,返回一个int 类型的变量,返回数据库操作之后影响的行数.适合用来验证对数据库进行增删改的情况. 2.ExecuteScalar()也可以执 ...
- 【bzoj4503】 两个串 FFT
$FFT$套路题(然而我看错题了) 我们考虑化一下式子. 设当前比较的两个部分为$S[i....i+|T|-1]$和$T[0....|T|-1]$. 我们对串$T$中出现问号的位置全部赋值为$0$. ...
- UML入门 之 交互图 -- 时序图 协作图详解
作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/17927131 动态图概念 : 从静态图中抽取瞬间值的变化描 ...