python学习05
数据类型之字典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的更多相关文章
- python学习05条件分支
'''if '''a=1b=2if a==b: print(a)print(b) '''与C语言不同,python语言的if格式必须为if 布尔表达式:(冒号不能省略)其二,python有严格的缩进格 ...
- Python学习--05函数
Python函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.我们已经知道Python提供了许多内建函数,比如print().但我们 ...
- python学习05——字典
笨办法学python第39节 这节主要讲解的是字典,首先字典和列表的两个区别是: 1. 列表中可以通过数字找到列表中的元素,是数字作为索引的:字典中可以通过任何东西找到想要的元素,即字典可以将一个物件 ...
- python学习 05 函数switch功能
1.python没有switch功能,利用字典实现 如果用if else,可行但是效率不高
- Python 学习文章收藏
作者 标题 rollenholt Python修饰器的函数式编程 - Rollen Holt - 博客园 rollenholt python操作gmail - Rollen Holt - 博客园 ro ...
- Python学习记录day6
title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ...
- Python学习记录day5
title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ...
- 1 python学习——python环境配置
1 python学习--python环境配置 要学习python语言,光看书看教程还是不好,得动手去写.当然,不管学习什么编程语言,最佳的方式还在于实践. 要实践,先得有一个Python解释器来解释执 ...
- Python学习笔记(十一)
Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...
随机推荐
- Python 之网络式编程
一 客户端/服务器架构 即C/S架构,包括 1.硬件C/S架构(打印机) 2.软件B/S架构(web服务) C/S架构与Socket的关系: 我们学习Socket就是为了完成C/S的开发 二 OSI七 ...
- 既然CPU一次只能执行一个线程,那多线程存在的意义是什么?
今天看到了一篇文章,终于解除了一直的疑惑. 原文链接:https://www.cnblogs.com/qingbafengliuxia/p/10171638.html CPU的时间是按 ...
- ASP.NET MVC 下自定义 JsonResult,使用 Json.NET 序列化 JSON
直接贴代码了: using System; using System.Web.Mvc; using Newtonsoft.Json; namespace MvcSample.Extensions { ...
- 随心测试_软测基础_001<说在开始_测试理念>
- kvm虚拟化介绍
一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互相 ...
- 记录一下不能使用let时如何创建局部变量(使用立即执行函数)
记录一下阮老师提及的立即执行函数模拟let(以前根本没想到可以这样做啊!) // IIFE 写法 (function () { var tmp = ...; ... }()); // 块级作用域写法 ...
- lower_bound( )和upper_bound( )的基本用法
lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end.通过返回的地址减去起始地址 ...
- mybatis 一对多查询
需求:一条数据对应多张表 ad_share_friends 主表 ad_share_image 图片表 建立实体 adShareFriends 和 adShareImage *注意在adShar ...
- 【问题解决方案】ImportError: No module named 'pygal'
<Python编程:从入门到实践>一书,第二个项目-可视化,第四节用到pygal 安装部分用 'python -m pip install pygal==1.7' 安装,但使用时仍然报错 ...
- JS实现 阿拉伯数字金额转换为中文大写金额 可以处理负值
JS实现 阿拉伯数字金额转换为中文大写金额 可以处理负值 //************************* 把数字金额转换成中文大写数字的函数(可处理负值) ****************** ...