python组合数据类型包括_第六周 python组合数据类型
集合类型及操作
集合元素之间无序,集合元素不可更改。
创建
set("pypy123")
{'1', '3', 'p', 'y', '2'} 空集合不能用{}生成,留个字典了, 用set()
关系操作
交 & 并 | 差 - 补^ 支持(&=, |=, -=, ^=)
关系操作符 ,>= 判断子集关系或包含关系
>>> A = {'p','y',123}>>> B = set("pypy123")>>> A-B
{123}>>> B-A
{'1', '3', '2'}>>> A&B
{'y', 'p'}>>> A|B
{'1', '3', 'p', 'y', '2', 123}>>> A^B
{'1', '3', '2', 123}>>>
方法:
S.add(x)
S.discard(x) #不报错
S.remove(x) #没有会报错
S.clear()
S.pop() #随机 pop一个,没有产生异常
S.copy()
Len(S)
x in S / x not in S
集合应用场景:
关系判断
数据去重:集合类型所有数据无重复
>>> listA = [1,3,2,4,2,1,1,2]>>> setTemp =set(listA)>>> listA =list(setTemp)>>>listA
[1, 2, 3, 4]
序列类型及操作
序列是一维元素的向量。
序列类型是基类类型 (元组,列表,字符串)由序列类型衍生
处理函数:
x in S / x not in S
S + t
S *n或n*S
S[i]
s[i:j]或s[i:j:k] #切片
通用函数:
len(s)
min(s) #需要可比
max(s) #需要可比
方法:
s.index(x)或 s.index(x,i,j) #从i到j第一次出现的位置
s.count(x) #x出现总次数
元组类型
元组是序列类型的一种扩展。
不可变类型
定义
()或 tuple()
单个元组 (1,) 要加逗号,区分与基本类型
可以使用小括号或者不适用小括号
example:
def func():
return 1,2
1,2就是一个元组
操作:
继承序列的操作
无特殊操作
列表类型
可变类型
定义
[]或list()
列表中各元素类型可以不同,无长度限制
ex:
>>> ls = ['pig','fish',999]>>>ls
['pig', 'fish', 999]>>> lt =ls>>>lt
['pig', 'fish', 999]
方括号[]和list真正创建一个列表,赋值操作仅传递引用()浅拷贝
操作:
ls[i] = x
ls[i:j:k] = lt #用lt替换ls切片后所对应元素子列表
del ls[i]
del ls[i:j:k]
ls += lt
ls *= n #使元素重复n遍
方法:
ls.append(x) #后面增加一个元素
ls.clear()
ls.copy() #创建一个新的,深拷贝
ls.insert(i, x) #在ls第i个元素前增加元素x
ls.pop(i) #取出并删除第i位置元素
ls.remove(x) #将ls中出现的第一个元素x删除
ls.reverse() #反转
extend()和append()的区别:
append(x)只向列表增加一个元素,如果x为列表,则列表x作为一个元素,不会拆分
extend(seq)参数seq 是元素序列,会将元素拆分依次加到后面
>>> ls = list(range(1,5))>>>ls
[1, 2, 3, 4]>>> ls.append(1)>>>ls
[1, 2, 3, 4, 1]>>> ls.append(1,2,3)
Traceback (most recent call last):
File"", line 1, in TypeError: append() takes exactly one argument (3given)>>> ls.append([1,2,3])>>>ls
[1, 2, 3, 4, 1, [1, 2, 3]]>>> ls.append((1,2,3))>>>ls
[1, 2, 3, 4, 1, [1, 2, 3], (1, 2, 3)]>>> ls.append({a:1,b:2})
Traceback (most recent call last):
File"", line 1, in NameError: name'a' is notdefined>>> ls.append({'a':1,'b':2})>>>ls
[1, 2, 3, 4, 1, [1, 2, 3], (1, 2, 3), {'a': 1, 'b': 2}]>>> ls.extend(range(5,8))>>>ls
[1, 2, 3, 4, 1, [1, 2, 3], (1, 2, 3), {'a': 1, 'b': 2}, 5, 6, 7]>>> ls.extend((1,2,3))>>>ls
[1, 2, 3, 4, 1, [1, 2, 3], (1, 2, 3), {'a': 1, 'b': 2}, 5, 6, 7, 1, 2, 3]>>> ls.extend({'c':3,'d':4})>>>ls
[1, 2, 3, 4, 1, [1, 2, 3], (1, 2, 3), {'a': 1, 'b': 2}, 5, 6, 7, 1, 2, 3, 'c', 'd']
序列应用场景
数据表示
元组用于元素不改变的场景,多用于固定搭配,数据保护 (const)
字典类型
键值对 索引->数据
字典是键值对的集合,键值对之间无序
定义
{}或dict() 键值间用:分割
操作和方法:
del d[k]
k in d
d.keys() #返回所有键 返回类型可以便利,但不能当列表操作
d.values() #返回所有值
d.items() #返回所有键值对信息
d.get(k,) #键k存在,返回对应值,不存在返回值
d.pop(k,) #键k存在,取出对应值,不存在返回值
d.popitem() #随机取出一个键值对,以元组的形式反回
d.clear()
len(d)
应用场景
表达键值对数据,进而操作
元素遍历
for k in d:
python组合数据类型包括_第六周 python组合数据类型相关推荐
- 嵩天-Python语言程序设计程序题--第六周:组合数据类型
前言:嵩天老师的<Python语言程序设计课程>被评为国家精品课程,在幕课上累计超过11万学员,里面的习题对初学者入门Python,提高编程实战能力很有帮助.因此,我想把自己学习这门课程作 ...
- python串口发送数据_第六课python来写串口助手-串口发送数据
https://m.toutiaocdn.com/group/6716026491689239044/?app=news_article×tamp=1563807838&re ...
- 软件工程_东师站_第六周作业
1. PSP Date Type Job Start Int(min) End Total(min) 20160407 编码 抢答器重构 19:00 30 20:50 80 站立会议 " ...
- python文件处理基础_第六篇:python基础之文件处理
阅读目录 一.文件处理流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 正趣果上果 Interesting fruit fruit 词:郭婞 曲:陈粒 编曲/混音/和声: ...
- python简单数据类型变量_(八)python的简单数据类型和变量
什么是数据类型? 程序的本质就是驱使计算机去处理各种状态的变化,这些状态分为很多种. 例如英雄联盟游戏,一个人物角色有名字,钱,等级,装备等特性,大家第一时间会想到这么表示 名字:德玛西亚------ ...
- python梦幻西游4小人_梦幻西游:五开简单组合,1无底洞4溅射大唐优势明显,全程挂自动...
一个喜欢五开的梦幻玩家,今天给大家介绍的是关于五开的奇葩组合,1无底洞4大唐,该组合简单方便,配合大唐的平砍优势可谓是挂机最佳的组合,一起来看看吧. 这里介绍的队伍等级为109级,玩家之所以选择了4大 ...
- 我的python学习笔记全集_记录我的Python学习笔记
不想再像以前那样,什么都从头开始学习语法.总结语法,这样反而会过分纠结于语法,耽误了开发,毕竟语言的主要属性是工具,次要的属性是语言本身. 所以还是先熟练使用语言去进行开发,等足够熟悉了,再去研究语言 ...
- 杨洋python课程提高篇_全民一起玩Python 基础篇+提高篇,杨洋老师Python入门教程...
01第零回:莫叹琐事催白发,且学Python省年华.mp4 02第一回:梧桐长成鸾凤至,环境搭好代码来.mp4 03第二回:算术符号遵循惯例,版本差异务必当心.mp4 04第三回:单条语句独占单行代码 ...
- c++中的引用和python中的引用_对比 C++ 和 Python,谈谈指针与引用
作者 | 樱雨楼 引言 指针(Pointer)是 C.C++ 以及 Java.Go 等语言的一个非常核心且重要的概念,而引用(Reference)是在指针的基础上构建出的一个同样重要的概念. 指针对于 ...
- python控制语句第一章_【原创】Python第一章
Python总是从第一行代码开始逐步执行,而C是从main函数开始执行. 在Python中,一切东西都是对象. 在Python中,没有C的花括号,不能任意排版,属于同一个语句块的语句需要使用相同的对齐 ...
最新文章
- 人工智能机器学习区别计算机应用,AI、人工智能和机器学习有什么区别
- 牛顿棺材板快盖不住了:用深度神经网络解决三体问题,提速一亿倍
- 【mycat】简介及安装
- 笔记-高项案例题-2014年上-计算题
- 如何做相册_腾讯相册管家再创相册管理软件新纪元
- 深入Java集合学习系列:LinkedHashSet的实现原理
- 结对编程,到底是双剑合璧还是脚趾抠地?
- matlab输电线路模型,输电线路模型及其特性.ppt
- 《Nature》论文插图复刻第3期—面积图(Part2-100)
- 计算机英语考虑是,计算机英语中单词privilege和permission的区别
- xmlhttp.readyState的值及解释
- 魔域服务器修改和宝宝数据,宝宝属性与真实值之间的公式计算关系
- Mycat读写分离、主从切换、分库分表的操作记录 https://www.cnblogs.com/kevingrace/p/9365840.html
- syntax error, expect {, actual error, pos 1, fastjson-ve
- IG中最多案赞数居然是一棵蛋?!网友共同合作打破美国女星记录
- 在ROS中使用USB网络摄像头传输图像
- break和continue用法详解
- php开发使用predis(thinkphp框架,composer,windows环境练习)
- 地图数据设计(三):坐标参考系统的选择
- 证据理论(3)—— 计算两个证据体的距离
热门文章
- ASP.NET Core Logging in Elasticsearch with Kibana
- Fedora 16 更新源设置[zz]
- Tensorlayer深度强化学习之Tensorlayer安装
- 【学堂在线数据挖掘:理论方法笔记】第七天(4.1)
- 课程设计哈夫曼编/译码系统
- 【LeetCode】【数组】题号:*48,旋转图像
- Pytorch——计算机视觉工具包:torchvision
- 左对齐 latex_LaTex中使用XYpic绘制交换图表
- 这场直播,我们把 Apache 顶级项目盛会搬来了!
- 如何在 Flink 1.9 中使用 Hive?