一:元组

    1)定义

    元组:有序,可以按索引取值,不可变,但是可以修改元组里面可变数据的数据内容。

    res = (1,2,3,4,3,2,1)

  2)内置方法和使用

    res.count(1)

    返回值:2

  

    可以count,说明可以存放多个同样的数据

    res.index(2,3,6)

    返回值:5

二:字典

  1)字典的定义:

    字典无序,可以按key取值,key可以为所有不可变类型的数据,values可以为所有类型数据。

    例:name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang"}

  2)字典的内置方法和使用

    1.取值

      常用取值为key,但是当key不存在于字典中时,会报错

      name.get(key)

      如果不存在于字典,则返回None,若存在,则返回value

    

    2.keys,values,items

      

name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang"}

print(name.keys(),type(name.keys()))
#返回值:dict_keys(['one', 'two', 'three', 'four']) <class 'dict_keys'> print(name,values(),type(name.values()))
#返回值:dict_values(['wusong', 'likui', 'ruanxiaoqi', 'songjiang']) <class 'dict_values'> print(name.items(),type(name.items()))
#返回值:dict_items([('one', 'wusong'), ('two', 'likui'), ('three', 'ruanxiaoqi'), ('four', 'songjiang')]) <class 'dict_items'> #三种方式的返回值都不是原生列表,无法直接按索引取值,但是可疑的通过for迭代取出,或者直接强制转换为list类型,再按照索引取出。

    3.增加包含的值

      ①update

      ②setdefault

name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang"}

name.update({"four":"sunerniang","five":"ruanxiaoer"})
print(name)
#返回值:{"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"sunerniang","five":"ruanxiaoer"}
#遵从:原来字典有相同key则覆盖,无则添加。 name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang"}
name.setdefault("five",None)
print(name)
#返回值:name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang","five":None}
#原先字典有的key则忽视更新,没有的key则按第二个参数为value创建 name.fromkeys(["six","seven"],None)
#不改变字典里面的值,若为空字典,则迭代取出key,value为None

    4.去值

name={"one":"wusong","two":"likui","three":"ruanxiaoqi","four":"songjiang"}
pop_data=name.pop("two")
print(pop_data,name)
#返回值:likui {'one': 'wusong', 'three': 'ruanxiaoqi', 'four': 'songjiang'}
#pop按key弹出值,有返回值。
pop_data2=name.popitems()
print(pop_data2)
#返回值:('four', 'songjiang')
#popitems默认弹出最右的item,有返回值。

三:集合

  1)set集合的定义

    1.为单列数据集合(常见单列数据集合有:list,str,tuple,set,双列数据集合:dict)

    2.无序无key,无法取值

    3.可变数据,内部可以存放任意类型的多个数据,但是数据具有唯一性

  2)内置方法与使用

    1.交集,&,intersection

    2.并集,|,union

    3.差集,-,difference

    4.对称差集,^,symmetric_difference

a={1,2,3,4,5}
b={3,4,5,6,7} print(a.intersection(b))
print(a&b)
#返回值:{3, 4, 5} print(a.union(b))
print(a|b)
#返回值:{1, 2, 3, 4, 5, 6, 7} print(a.difference(b))
print(a-b)
#返回值:{1, 2} print(a.symmetric_difference(b))
print(a^b)
#返回值:{1, 2, 6, 7}

    在所有的运算后加_update就变为了替换原有数据,更新列表

   5.父子集合

a={1,2,3}
b={2,3,}
print(a>b)
print(a<b)
print(a==b) #返回值:True
False
False

python全栈开发_day6_元组,字典,集合的更多相关文章

  1. python全栈开发-Day5 元组、字典

    python全栈开发-Day5  元组.字典 一.前言 首先,不管学习什么数据类型,我们都带着以下几个问题展开学习: #1:基本使用 1 .用途 2 .定义方式 3.常用操作+内置的方法 #2:该类型 ...

  2. python全栈开发笔记---------数据类型---字典方法

    def clear(self) 清空字典里所有元素 # info = { # "k1":18, # "k2":True, # "k3":[ ...

  3. python 全栈开发,Day5(字典,增删改查,其他操作方法)

    一.字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.存储大量的数据,是关系型数据,查询数据快. 列表是从头遍历到尾字典使用二分查找 二分查找也称折半查找(Bi ...

  4. python全栈开发笔记---------数据类型-----字典dict

    字典 #dict #1.基本结构 info= { "k1" : "v1", #键值对 "k2" : "v2" } ### ...

  5. Python 全栈开发:dict(字典)常用方法操作、dict嵌套

    数据类型的划分:可变数据类型和不可变数据类型. 不可变数据类型(可哈希):元祖.bool.int.str 可变数据类型(不可哈希):list.dict,set(集合) dict(字典): dict(字 ...

  6. Python全栈开发 列表, 元组 数据类型知识运用及操作 range知识

    一.列表 1.什么是列表? 列表是一个可变类型,由  [ ] 表示,每一项元素用逗号隔开.列表能够装大量的数据,可以装对象的对象. 2.列表的索引和切片. 列表和字符串一样,也有索引和切片.只不过列表 ...

  7. python全栈开发学习_内容目录及链接

    python全栈开发学习_day1_计算机五大组成部分及操作系统 python全栈开发学习_day2_语言种类及变量 python全栈开发_day3_数据类型,输入输出及运算符 python全栈开发_ ...

  8. Python全栈开发【模块】

    Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...

  9. Python全栈开发【基础四】

    Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...

随机推荐

  1. Openssl rand命令

    一.简介 rand命令用来产生伪随机字节,随机数字产生器需要一个seed,在没有/dev/srandom系统下的解决方法是自己做一个~/.rnd文件 二.语法 openssl rand [-out f ...

  2. EZOJ #226

    传送门 分析 我们可以建一个k层图,把dp转移的三维对应到每个点上,每个第k层点连向0层点 我们让第0层点为实点其余为虚点,只要碰到虚点就dfs到他连得所有实点再将实点入队即可 代码 #include ...

  3. Python的内建比较函数cmp比较原理剖析-乾颐堂

    cmp( x, y):比较2个对象,前者小于后者返回-1,相等则返回0,大于后者返回1. Python的cmp比较函数比较原理 Python的cmp函数可以比较同类型之间,或者不同数据类型之间.然后根 ...

  4. [operator]ELK6的安装

    找了很久才找到一个博客写得比较全面的,FrankDeng 系统环境:CentOS7 相关软件:node-v10.9.0.tar.gz.kibana-6.4.0-linux-x86_64.tar.gz. ...

  5. Android 修改 TextView 的全局默认颜色。

    如果你的应用中大多数TextView的颜色是红色, 或者其他颜色, 你是为每一个TextView都设置一次颜色, 还是有其他更好的办法, 这里教你怎么修改TextView的默认颜色. 当然我们Text ...

  6. Dubbo服务启动依赖检查

    dubbo 官方文档地址:http://dubbo.io/User+Guide-zh.htm 项目中存在服务之间存在循环依赖,启动时总是报错,通过修改启动检查check=false解决,下面是dubb ...

  7. 域名如何绑定IP

    以 http://www.xinnet.com/ 为例 1.登陆新网,进入域名管理,解析 2.进入mydns 添加新的A记录 填写主机名比如:www.xxx.com 填写对应的ip地址:xxx.xxx ...

  8. js阿拉伯数字转中文大写 方法重多

    方法一  function DX(n) { if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(n)) return "数据非法"; var unit = &qu ...

  9. Android view状态保存

    为什么我们需要保存View的状态? 这个问题问的好!我坚信移动应用应该帮助你解决问题,而不是制造问题. 想象一下一个非常复杂的设置页面: 这并不是从一个移动应用的截图(这不是典型的win32程序吗.. ...

  10. Spring Cache介绍和使用

    Spring Cache 缓存是实际工作中非经常常使用的一种提高性能的方法, 我们会在很多场景下来使用缓存. 本文通过一个简单的样例进行展开,通过对照我们原来的自己定义缓存和 spring 的基于凝视 ...