python学习 第六天课后总结:
python学习 第六天课后总结:
今日内容:
一,元组:tuple() 跟python其它数据类型一样,tuple()也是一个可将字符串转换成元组的内置函数
特点:
1,被元组转换的对象,一定是可迭代的对象,数字可不行滴,一般字符串或列表,转换后都会被拆成单个元素
在无组中存在,可以被for 循环给迭代的。
2,元组是有序排列,可通过索引值进行索引,当然也可以计算它的长度
例:tu = (a,b,c,d,e) #定义一个元组
print(len(tu)) #会显示: 3 当前元组的元素数量为3
s1 = tu[2:] #对元组进行切片,索取元组的元素并给变量s1赋值
print(tu.index(b,1,3)) #在元组中索引指定的元素x,指定从索引值1开始,
# 显示为 1 到索引值3结束的范围查找值为b的元素位置,默认可不指定范围
print(len(tu)) # 显示为 5 表示此元组中共有五个元素
3,元组是不可变类型的python数据类型。里面的元素是不可更改滴,但如果元素为列表,或字典时,可变列表或
列表的值。
例:t2 = (1,["a","b","c"],{"name":"Frank"})
t2[1][2] = "d" #重新定义元素中索引值为1的列表中的索引位置为2的值
t2[2]["name"] = "aibapspl#重新定义元素中索引值为2的字典中的索引位置为"name"的值
print(t2) #显示为:(1, ['a', 'b', 'd'], {'name': 'aibapspl'})
4,如果定义元组时,值只有一个,在此元素后一定要加一个逗号,代表后面还有元素,可被for循环迭代。
例: tu1 = tuple(1,) #当元素只有一个时,定义元组时,此元素后面一定要加逗号!
5,应用场景: 根据需要,元组和列表可以互相转换。
例 li = [1,2,3] #定义一个列表
tu = tuple(li) #使用tuple()内置函数转换列表
print(type(tu)) #查看转换后的类型
<class 'tuple'> #显示为元组类型
l2 = list(tu) #使用函数list()转换无组
print(type(l2)) #查看转换后的类型
<class 'list'> #显示为列表类型
二,字典 dict{} 此数据类型为python语言中唯一的mapping类型,即一个key对应一个value
特点:
1, 字典内的元素都是以键值对形式存在,即key:value的形式一一对应,key与value之间使用冒号分隔,每个 元素之间使用逗号隔开
key:只能是不可变类型,如数字类型,元组,字符串和布尔型
value: 所有类型都可以为value
例: dic1 = {123:None,None:123,(1,2):[a,b],True:None,{"s":2}:1.92,2.16:2.16}
2,字典中的key具有唯一性,如果字典中已存在一个值,如果再赋值一个相同的key,字典中key的值会被覆盖
例:dic1 = {123: None,} #定义一个字典
dic1[123] = "abc" #替换字典中key为123的值为"abc"
print(dic1) #打印字典
{123: 'abc'}
3, 字典是无序存储的,所以无法使用index()索引,只能靠取key来更改key的值,
例: dic1 = {123: None} #定义一个字典
print(dic1[123]) #查询字典中key为123的值
abc #显示key的值为abc
print(type(dic1[123])) #查询这个key的值的类型
<class 'str'> #显示为字符串类型
内置属性的使用方法:
.pop() 根据key来指定要删除的元素
例: dic1 = {123: None,"name":"Frank"} #定义一个字典
dic1.pop("name") #删除一个key为"name"的元素
print(dic1) #打字删除后的字典
{123: None} #结果显示,key为"name"的元素已删除
.copy() 浅拷贝 相当系统另申请一个内存空间以来存放与原字典一样的值
例: dic1 = {123: None} #定义一个字典
dic2 = dic1.copy() #字典dice2复制dict1的值
print(dic2) #打字dice2的值
{123: None} #显示dice2的值
print(id(dic1),id(dic2)) #打印出二个字典的内存id
4567702768 4644934784 #显示出二个字典的内存id不相同
三,集合 set()
特点:
1,单列的数据集合,内部可以存储任意类型的数据,但每个数据都具有唯一性
例: li = [1,2,3,4,2] #创建一个空集合
s1 = set(li) #将列表转换成集合
print(s1) #打印出集合的值
{1, 2, 3, 4}
print(type(s1)) #打印类型
<class 'set'> #显示的类型为集合
2,无序存储 无法使用key或索引值来取值
使用场景:集合间的运算
例:s1 = {1,2,3,"x"} #创建四个集合
s2 = {1,2,3,"y"}
s3 = {4,5,6}
s4 = {1,2,3,4,5,6}
print(type(s1),type(s2),type(s3),type(s4)) #打印类型
<class 'set'> <class 'set'> <class 'set'> <class 'set'> #显示都为集合
交集:&
print(s1 & s2) #打印出二个集合之间的交集,即相同的元素
{1, 2, 3} #显示出二个集合间的相同元素
并集:|
print(s1 | s2) #打出出二个集合的并集,即把二个集合的所有元素集合,并去除重复元素
{1, 2, 3, 'x', 'y'} #显示出二个集合的所有元素,并去除了重复的部分
差集:-
print(s4 - s3) #打印出s4与s3的差集 即用s4里的所有元素减去s3的元素,留下的就是s3 中没有的元素
{1, 2, 3} #显示出s3中没有的元素
也可使用函数: 集合一.symmetric_difference(集合二)来完成来完成
print(s4.symmetric_difference(s3)) #打印出s4与s3的差集 即用s4里的所有元素减去 {1, 2, 3} s3的元素,留下的就是s3中没有的元素
print(s4.symmetric_difference(s3))
对称交集: ^
print(s1 ^ s2) #打印出二个集合的对称交集 即显示出二个集合中相互没有的元素
{'x', 'y'} #显示出这二个集合相互没有的元素
也可使用函数: 集合一.symmetric_difference(集合二)来完成
print(s1.symmetric_difference(s2))
{'x', 'y'} ##显示出这二个集合相互欠缺的元素
python学习 第六天课后总结:的更多相关文章
- python学习第六天运算符总结大全
python学习第六天运算符总结大全,玖乐网络(www.96net.com.cn)列出下面详细 1,算术运算符 + 加 - 减 *乘 / 除 % 求模 ** 乘方 // 取整除 - 返回商的整数部分 ...
- python学习第六天
一. 模块介绍1. 模块的定义:用一堆代码实现了某个功能的代码集合 包的定义:本质就是一个目录(必须导游一个_init_.py文件),是用来从逻辑上组织模块的.2. 需要多个函数才能完成(函数 ...
- python学习第六天 条件判断和循环
总归来讲,学过C语言的同学,对条件判断和循环并不陌生.这次随笔只是普及一下python的条件判断和循环对应的语法而已. 条件判断: 不多说,直接贴代码: age = 23 if age >= 6 ...
- python学习第六天:python基础(dict、set)
dict dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度 创建&取值 为什么dict查找速度这么快? 因为 ...
- python学习第六天:python基础(条件判断、循环)
条件判断 格式 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> ...
- 数据类型+内置方法 python学习第六天
元组 用途:不可变的列表,能存多个值,但多个值只有取的需求而没有改的需求. 定义方式:在()内用逗号分隔开多个元素,可以存放任意类型的值. names=(‘alex’,’blex’,’clex’) 强 ...
- python学习第六天--匿名函数、过滤、映射
匿名函数 lambda表达式 过滤器 filter(判断函数,可迭代对象) 会根据提供的函数对指定序列做过滤 映射 map(判断函数,可迭代对象) 会根据提供的函数对指定序列做映射
- Python 学习 第三天 课后总结:
PYTHON学习第三天课后总结: 1,注释:就是对代码起到说明注解的作用. 注释分为单行注释与多行注释. 单行注释:只注释一行代码在需要注释的所在行的行首使用#号来注释此行,注意#与代码之间需要 ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
随机推荐
- centos7;windows下安装和使用spice
感谢朋友支持本博客,欢迎共同探讨交流,因为能力和时间有限,错误之处在所难免,欢迎指正! 假设转载,请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...
- swust oj 2516 教练我想学算术 dp+组合计数
#include<stdio.h> #include<string.h> #include<iostream> #include<string> #in ...
- Create the Project
https://docs.microsoft.com/en-us/aspnet/web-forms/overview/getting-started/getting-started-with-aspn ...
- 阿里云aliyunlive视频直播,设置元素浮在视频上方
视频直播,视频是可以看到了.但是还需要其他的元素,比如聊天内容,小礼物效果,观看人员列表等等.怎样让其他的元素,浮在视频上方呢? 解决方案,通过打开一个frame层,设置body的背景为透明的. 新的 ...
- Android 5.0(Lollipop)中的SurfaceTexture,TextureView, SurfaceView和GLSurfaceView
SurfaceView, GLSurfaceView, SurfaceTexture以及TextureView是Android当中名字比较绕,关系又比较密切的几个类.本文基于Android 5.0(L ...
- GOLANG 加密,解密,GUID 小方法
golang的 MD5加密.BASE64解密 guid 的代码: /** * 用于加密,解密,(包含MD5加密和base64加密/解密)以及GUID的生成 * 时间: * zhifieya */ p ...
- Sqoop-1.4.6工具import和export使用详解(官网)
不多说,直接上干货! 1.Sqoop Import (进入官网) 因为,sqoop的使用方式是: sqoop COMMAND ARGS. 以下是 sqoop COMMAND ARGS 以下是 ...
- Google Nexus 5x Android 7.0 Root
很久没有写东西了,准备重新养成这个好习惯.因为自己一直在用Nexus,前段时间自己的Nexus5老的不行了,所以买了台5x,一直没时间root,今天有时间终于有时间弄一下. 在这里整理分享一下. 开始 ...
- .Net Web开发技术栈 收藏
原文:http://www.cnblogs.com/1996V/p/7700087.html#!comments 有很多朋友有的因为兴趣,有的因为生计而走向了.Net中,有很多朋友想学,但是又不知道怎 ...
- WebApi 参数请求
收藏来源于:http://www.cnblogs.com/babycool/p/3922738.html 路由配置到id post多个参数 ➕前缀 FromBody 参数为实体 对于一般前台页面发起的 ...