数据类型之字典dict、set集合

1).字典dict

1. dict_1={'name':'tom','age':18} 是以键值对(key-value)的方式,其中键是可hash值的,即表示键是唯一的

2.获取字典中的值:dict_1['name'] 或者get方法,dict_1.get('name'),判断key是否在字典中,if 'age' in dict_1

3.删除其中的一个元素,pop('name') popitem()随机删除,删除所有,clear()

4.字典的copy dict_2=dict_1.copy() 或dict_2=dict_1,c_dict=dict.fromkeys([1,2,3],'OK'),返回:{1: 'OK', 2: 'OK', 3: 'OK'}

alph_num=dict(zip(['a','b','c'],[97,98,99])),zip函数是两组列表一一对应,形成键值对的方式,如果两个列表数值不一样,采用最小原则

如:a=[1,2,3,4],b=[5,6,7,8,9]

dict(zip(a,b)),返回:{1: 5, 2: 6, 3: 7, 4: 8}

5.设置默认值 setdefault,如 a_dict = {'name': 'tom', 'age': 22}  a_dict.setdefault('sex','nan') 返回的是值的名字,

upddate的使用:a_dict={'name': 'tom', 'age': 22} b_dict={1: 'ben', 2: 'lll'} 返回结果为:{'name': 'tom', 'age': 22, 1: 'ben', 2: 'lll'}

6.可以用items函数,遍历取出key和value for key,values in dict.items: print(key,values)

2)集合,形式:{1,2,3,4}

2.1 在集合中元素中,无重复值,可以修改,有add,remove,update等方法,可以定义不可改变形式,frozenset({1, 2, 3, 4})

eg.a={1,2,3} a.update((2,4,5))返回:{1, 2, 3, 4, 5}

2.2集合中的运算

& 求交集

| 求并集

- 求差集

举例:

快速生成一副扑克牌

a= [str(i) for i in range(2,11)] + ['J','Q','K']
poker =[j + i for i in a for j in '*#@$']
poker +=['k1','k2']
print(poker)

python学习05的更多相关文章

  1. python学习05条件分支

    '''if '''a=1b=2if a==b: print(a)print(b) '''与C语言不同,python语言的if格式必须为if 布尔表达式:(冒号不能省略)其二,python有严格的缩进格 ...

  2. Python学习--05函数

    Python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.我们已经知道Python提供了许多内建函数,比如print().但我们 ...

  3. python学习05——字典

    笨办法学python第39节 这节主要讲解的是字典,首先字典和列表的两个区别是: 1. 列表中可以通过数字找到列表中的元素,是数字作为索引的:字典中可以通过任何东西找到想要的元素,即字典可以将一个物件 ...

  4. python学习 05 函数switch功能

    1.python没有switch功能,利用字典实现 如果用if else,可行但是效率不高

  5. Python 学习文章收藏

    作者 标题 rollenholt Python修饰器的函数式编程 - Rollen Holt - 博客园 rollenholt python操作gmail - Rollen Holt - 博客园 ro ...

  6. Python学习记录day6

    title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...

  7. Python学习记录day5

    title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...

  8. 1 python学习——python环境配置

    1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...

  9. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

随机推荐

  1. Python 之网络式编程

    一 客户端/服务器架构 即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件B/S架构(web服务) C/S架构与Socket的关系: 我们学习Socket就是为了完成C/S的开发 二 OSI七 ...

  2. 既然CPU一次只能执行一个线程,那多线程存在的意义是什么?

    今天看到了一篇文章,终于解除了一直的疑惑.         原文链接:https://www.cnblogs.com/qingbafengliuxia/p/10171638.html CPU的时间是按 ...

  3. ASP.NET MVC 下自定义 JsonResult,使用 Json.NET 序列化 JSON

    直接贴代码了: using System; using System.Web.Mvc; using Newtonsoft.Json; namespace MvcSample.Extensions { ...

  4. 随心测试_软测基础_001<说在开始_测试理念>

  5. kvm虚拟化介绍

    一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互相 ...

  6. 记录一下不能使用let时如何创建局部变量(使用立即执行函数)

    记录一下阮老师提及的立即执行函数模拟let(以前根本没想到可以这样做啊!) // IIFE 写法 (function () { var tmp = ...; ... }()); // 块级作用域写法 ...

  7. lower_bound( )和upper_bound( )的基本用法

    lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end.通过返回的地址减去起始地址 ...

  8. mybatis 一对多查询

    需求:一条数据对应多张表 ad_share_friends  主表 ad_share_image 图片表 建立实体 adShareFriends  和  adShareImage *注意在adShar ...

  9. 【问题解决方案】ImportError: No module named 'pygal'

    <Python编程:从入门到实践>一书,第二个项目-可视化,第四节用到pygal 安装部分用 'python -m pip install pygal==1.7' 安装,但使用时仍然报错 ...

  10. JS实现 阿拉伯数字金额转换为中文大写金额 可以处理负值

    JS实现 阿拉伯数字金额转换为中文大写金额 可以处理负值 //************************* 把数字金额转换成中文大写数字的函数(可处理负值) ****************** ...