博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据的类型以及内置方法
阅读量:4916 次
发布时间:2019-06-11

本文共 2541 字,大约阅读时间需要 8 分钟。

数据的类型可以分为              

   int 整数型    

   str 字符串

   float浮点型

   list列表

   dict字典

   bool 布尔值

   set集合

   tuple元组

其中 可变类型有:列表 字典 集合

      不可变类型 :字符串 整型 元组 

什么是可变类型?

 可变类型: 值改变 但是id不变

 不可变类型:值改变 id改变

上一篇博客呢 写了 整型 字符串 和 一点点的列表的内置方法,今天呢继续说列表

列表呢是一个可变类型 也就是说他的值改变 id不会改变 为什么呢 看我这图就知道了

什么意思呢 就是说一个变量他绑定的是一个列表 而这个列表他是一个地址 地址里有很多索引 而这个索引他绑定的又是其他地址了 所以说你添加或者删除呢只会改变

索引绑定的那个地址 而不会改变列表的地址  好比就说这个 元组 大家都知道元组不可变类型 但是这样却可以

为什么呢?看图  因为他改变的是列表的值对吧 而列表呢是可变类型

好 现在我们继续开始学习昨天列表还剩下的内容!列表的内置方法 我们还需要掌握几个 我会一一给大家演示这次

.clear()   清除列表中的所有元素 因为res为空列表 返回None

.count() 返回的值是()里的数字在列表中存在的个数

.reverse() # 将列表反转

 .sort() .sort(reverse=True)

# 队列   先进先出l1 = []# 先进l1.append('first')l1.append('second')l1.append('third')# # 先出print(l1.pop(0))print(l1.pop(0))print(l1.pop(0))# 堆栈   先进后出# 先进l1.append('first')l1.append('second')l1.append('third')# 后出print(l1.pop())print(l1.pop())print(l1.pop())
先进先出和先进后出

元组:

元组的定义 ()内用逗号隔开 可以存多个值 任何类型的值,但是唯一和字典 列表不同的是它的值不能修改

age=(11,22,33,44,55)#本质age=tuple((11,22,33,44,55)) ()里必须传容器类型
*在定义容器类型的时候,哪怕内部只有一个元素,你也要用逗号隔开 区分一下
按索引取值(正向取+反向取):只能取
切片(顾头不顾尾,步长)print(t[::2])长度print(len(t))成员运算in和not inprint('a' in t)循环for i in t:   print(i)

字典的内置方法 

能存存储多组 key:value键值对  key是对value的描述  key通常情况下都是字符串
其实这个key只能是不可变类型,value可以是任意数据类型
强调:字典的key是不能重复的 要唯一标识一条数据 如果重复了 只会按照最后一组重复的键值对存储
按key存取值:可存可取  假如添加的存在 那么 覆盖他的值 假如不存在 直接添加到字典
 
赋值语句当key不存在的情况下,会自动新增一个键值对

长度len  统计的键值对的个数

员运算in和not in 对于字典来说只能判断key值

删除  三种删除方式 del 字典['key']  字典.pop('key')  字典.clear('key') s
定义字典的三种方式 (****)

键keys(),值values(),键值对items()
get()根据key获取value(*******************************)
 
快速的创建一个字典 dict.fromkeys()
 
dict.popitem()
 
.setdefault()

.update()
 
集合 set 关系运算.去重 定义:
集合:可以包含多个元素,用逗号分割
s = {1,2,3,4,5,6} s1 = set() 注意在定义空集合的只能用关键字set
如果你仅仅只写了一个大括号 那么python默认将它当做字典类型
集合的元素遵循三个原则:1:每个元素必须是不可变类型可变:不可hash不可变:可hashs = {1,2,3,4,5,6,'a',(1,2),[1,2]}  # 报错s = {1,2,3,4,5,6,'a',(1,2),{
"name":'jason'}} # 报错2: 没有重复的元素s = {1,2,2,2,2,2,2,2,2,2,3,4,4,4,4,4,5}print(s) # 自动将重复的元素 去除3:无序s = {1, 2, 3, 4, 5, 6}print(s[1])
注意集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值
优先掌握的操作:1、长度lens = {1,2,3,4}print(len(s))2、成员运算in和not in3、|合集4、&交集5、-差集6、^对称差集7、==s = {1,2,3}s1 = {3,1,2}8、父集:>,>=s = {1,2,3,4,55}s2 = {1,2,666}pythons = {
'jason', 'nick', 'tank', 'egon', 'kevin', 'owen', 'alex'}linux = {
'frank', 'jerry', 'tank', 'egon', 'alex'}# 既报名python也报名linux的学生姓名print(pythons & linux) # 交集# 只报名python的学生姓名print(pythons - linux)# 只报名linux的学生姓名print(linux - pythons)# 没有同时报名两门课程的学生姓名print(pythons ^ linux) # 对称差集# 取出所有报了名的学生姓名print(pythons | linux)
.add

有补充的我会补充

 

 

转载于:https://www.cnblogs.com/lddragon/p/11134519.html

你可能感兴趣的文章
Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1
查看>>
LeetCode My Solution: Minimum Depth of Binary Tree
查看>>
Objective-C中的Category(分类)
查看>>
浅谈python可迭代对象,迭代器
查看>>
python 多分类任务中按照类别分层采样
查看>>
Java(23)_ String类常用方法
查看>>
IOS开发网络篇—XML介绍
查看>>
Spider-four
查看>>
asp.net中动态修改网页Title的几种方法
查看>>
匿名函数递归调用自身
查看>>
【转】U-BOOT之三:u-boot移植一
查看>>
NOJ 1651 Red packet(二分)
查看>>
php 中间代码opcode
查看>>
Uva 1061 The Morning after Halloween
查看>>
777,755,644在linux中的权限表示
查看>>
【笔记】LR响应时间
查看>>
关于Cocos2d-x中对其他某个类的某个属性的获得
查看>>
Python BeautifulSoup库的用法
查看>>
吴裕雄--天生自然 R语言开发学习:数据集和数据结构
查看>>
vs+ef+mysql 环境设置
查看>>