列表


1.列表可存放任何东西,并且可修改

2.列表有序

3.列表支持索引与切片

4.支持for,while循环,所以列表为可迭代对象

5支持in操作,判断元素是否在列表中

6可多重索引嵌套列表

7.字符串可以转换为列表list():因为其内部使用的是for循环#两者为可迭代对象

8.数字不可转列表:不能用for循环,因为数字非可迭代对象

9列表转字符串

有数字、字符串 自己使用for循环
只有字符串 ‘’.join()

列表的灰魔法

1.li.append() :在原来值后添加

2.li.clear() :清空列表

3.v = li.copy() :浅拷贝

4.v = li.count() : 计算列表内指定元素的个数,不填参数(列表内元素)就报错

5.li.extend() : 执行for循环用append添加 参数必须是可迭代

6.li.index(): 根据参数获取当前值的索引位置(左边优先)

7.li.insert(n1,n2): 在指定索引位置插入元素 n1为位置,n2为元素

8.删除

v = li.pop() 删除某个值,并获取删除值可加索引(默认最后一个)
li.remove() 删除列表中指定元素,左边优先
del li【】 根据索引删除

9.li.reverse() :将当前列表进行反转

10.li.sort() : 列表排序 从小 到 大

li.sort(reverse =true) :列表排序从大 到 小

元组


tuple

1.元素不可被修改、增加、删除

2.元素有序

3.可索引、切片

4.可for循环、为可迭代对象

5.字符串、列表、元组间可转换 tuple()

6.一般写元组时,推荐在最后加入,

元组的一级元素不可修改,但一级元素下的二级元素(非元组)可修改

元组的灰魔法

1.count():获取元素在元组中出现次数

2.index():获取元素在元组中的位置

字典


dict

1.字典是无序的!

2.字典的值可任意

3.字典支持索引、切片

4.不可while循环,可for循环

5.字典的key不可是列表、字典、布尔。若key重复则key不显示

字典的灰魔法

info = {}

1.for item in info()  = for item in info.keys()     默认循环key

2.for k,v in info.items  循环key , values 进入k,v

3.get

v = info.get('k1',111)   根据key取值 ,若key不存在返回111,默认返回None

4.update

info.update({'k1' = '111','k2' = 122})    更新(修改)值

或者 info.update(k1 = 123,k2 = 252)

5.frokeys

静态引用

v = dict.fromkeys(['k1',123],123)  根据序列,创建字典,并制定统一值  即key:‘k1’、123的值为123

6.pop

v = info.pop('k1',90)  删除并获取值,若无则获取制定值90,若无则None

k,v = info,popitem()  删除并获取key and values

7.setdefalut : 设置值;若存在,不设置,获取当前key对应值

          若不存在,设置,并获取当前key对应值

8.

集合


set

1.集合由不同元素组成,有去重的功能

2.集合内元素无序

3.集合中元素必须是不可变类型

4.书写格式{,}

5。set() 转换为集合类型

集合的灰魔法

1.add()增加元素,但只加一个

2.clear()清空集合内的所有元素

3.s1 = s.copy( ) 复制s集合的元素给s1

4.s.pop() 随机删除集合内元素

5.指定删除

s.remove()

删除元素不存在会报错
s.discard() 删除元素不存在不会报错

6.求交集

s1 & s2 或者 s1.intersection(s2)

7.求并集

s2 | s1 或者 s2.union(s1)

8.求差集

s2 - s1  = s2.difference()  求的是存在于s2但不存在于s1

9.交叉补集:s1 于s2 交集的外部

s1 ^ s2 = s1 .symmetric_difference()

10.difference_update()  :做完差集再更新

s1.difference_update(s2)    与   s1 = s1 - s2  相同

11.isdisjoint

s1.isdisjoint(s2)    若有交集返回true

12.issubset 判断是否子集

issuperset 判断是否父集  是则Tru

13.update

如:s1.update(s2)  更新多个值到s1 (需可迭代对象)

14.s = frozenset(‘helllo’)

定义一个不可变的集合

15.简单去重

names = [ 's1','s2','s3']

names = list(set(names))

Python基本数据类型之列表、元组、字典、集合及其魔法的更多相关文章

  1. Python入门基础学习(列表/元组/字典/集合)

    Python基础学习笔记(二) 列表list---[ ](打了激素的数组,可以放入混合类型) list1 = [1,2,'请多指教',0.5] 公共的功能: len(list1) #/获取元素 lis ...

  2. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  3. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  4. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  5. python_列表——元组——字典——集合

    列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  6. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  7. python基础之02列表/元组/字典/set集合

    python中内置的数据类型有列表(list)元组(tuple)字典(directory). 1 list list是一种可变的有序的集合.来看一个list实例: #第一种方法: >>&g ...

  8. Day 07 数据类型的内置方法[列表,元组,字典,集合]

    数据类型的内置方法 一:列表类型[list] 1.用途:多个爱好,多个名字,多个装备等等 2.定义:[]内以逗号分隔多个元素,可以是任意类型的值 3.存在一个值/多个值:多个值 4.有序or无序:有序 ...

  9. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  10. python的对象类型-----列表&元组&字典

    列表: #定义列表 l=[1,'a',[3,4]] #l=list([1,'a',[3,4]]) #取值 print(l[0]) print(l[2][0]) l=[1,2,[['a','b'],'c ...

随机推荐

  1. Java EE 之 过滤器入门学习与总结(2)

    今天就对使用Filter技术能做什么来个小小的归纳.也为了方便今后的复习. 控制浏览器不进行对jsp页面的缓存 //在doFilter方法中添加这样的代码 HttpServletRequest req ...

  2. Git工程迁移方法总结(命令行)

    Git工程迁移方法总结 Git工程迁移方法总结 Git最近准备迁移一下位置,这里采用命令行的方式,做如下操作. 1.git init  初始化git仓库,这个时候发现本地文件夹多了个.git的文件夹. ...

  3. EBS预置文件作用收集整理

    在EBS之中,有很多的配置选项(profile),系统管理员只需要对它们做一些简单的配置,就可以达到控制流程开关.安全访问.个人喜好等等方面的要求. 以HR: Security Profile为例,该 ...

  4. 用SpriteBuilder简化"耕牛遍地走"的动画效果(四)

    写到这突然有童鞋质疑,你这哪里是牛,分明是熊嘛! 仔细看了下,还真像牛.反正是这个意思.怪本猫猪牛熊不分,好在道理是一样的. 下面继续,言归正传. 添加一个空白的touchBegan方法,如果没有这个 ...

  5. HBase作为存储方案

    HBase存储特点 * Client 1. 包含访问HBase的接口,并维护cache来加快对HBase的访问,比如region的位置信息. * Zookeeper: 1. 选举集群中的Master, ...

  6. JSP标签JSTL(3)--迭代操作

    简单点说,<c:forEach>标签的作用就是迭代输出标签内部的内容.它既可以进行固定次数的迭代输出,也可以依据集合中对象的个数来决定迭代的次数. <!--语法使用如下--> ...

  7. 并发编程(三): 使用C++11实现无锁stack(lock-free stack)

    前几篇文章,我们讨论了如何使用mutex保护数据及使用使用condition variable在多线程中进行同步.然而,使用mutex将会导致一下问题: 等待互斥锁会消耗宝贵的时间 - 有时候是很多时 ...

  8. Chapter 1 Securing Your Server and Network(14):限制功能——xp_cmdshell 和OPENROWSET

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38656615,专题目录:http://blog.csdn.net/dba_huangzj ...

  9. sed-加速你在Linux的文件编辑

    1. Sed简介 sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中 ...

  10. Android平台 Psensor传感器调试方法

    一. 驱动层调试1.在板级dts文件中增加相应的dts代码,如:调试sensor类,在代码中找到已经有的代码在修改,I2C使用那根(一般为I2C3),I2C地址(找datasheet或者FAE),哪个 ...