数据类型之字典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集合中的运算

& 求交集

| 求并集

- 求差集

举例:

快速生成一副扑克牌

  1. 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. Django ORM 使用原生 SQL

    使用原生sql的 方法 : raw # row方法:(掺杂着原生sql和orm来执行的操作) res = CookBook.objects.raw('select id as nid from epo ...

  2. 如何在本地编译Fabric Code

    之前的博客都是拿官方现成的Docker镜像来用,但是并没有自己动手做镜像,也没有说到如何去开发和测试Fabric的代码.这一篇博客就从入门的角度讲解如何编译.测试和开发Fabric. 一.环境准备 要 ...

  3. Apache Jakarta Commons 工具集简介

    Apache Jakarta Commons 工具集简介[转] Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.我选了一些比较常用的项目做简单介绍.文 ...

  4. 关于取li中的value

    HTML的li标签的属性value是有规定的:规定列表项目的数字,所以它的value只能是数字.像字符和第一数字为0的都不取非要用li的话可以 var uid = $('#userid').attr( ...

  5. mysql一个非常实用解决sql查询优化的函数explain

    前言: 项目中有个表有几万条数据,然后还要关联其他表,查询条件也有点多,再没有其他查询条件下,默认时间查询条件如果是查一年的数据的话,查询时间那是慢得可怕. 找总监去优化sql,看他用了一个sql函数 ...

  6. JS学习笔记:(三)JS执行机制

    首先我们先明确一点:JavaScript是一门单线程语言.单线程也就是说同一时间只能执行一个任务,所有的任务都必须排队顺序执行.那么如果一个任务耗时很长,阻塞了其它任务的执行,就会给用户造成不友好的体 ...

  7. POJ1847 Tram

    Tram Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 20274   Accepted: 7553 Description ...

  8. sonar 匿名内部类写法不推荐

    今天sonar扫出一个问题, 是这样说的. 我觉得有点牵强吧. 有点个人情绪在的样子. 那Java设计这种方式干嘛?

  9. 虚拟机ubuntu设置静态IP与主机、外网互ping配置流程

    方案一.VMnet8(NAT模式) 1.选择自定义模式,VMnet8(NAT模式) 2.进入虚拟机,设置静态IP之前确认三者可互ping通,命令ifconfig,查看当前的IP 3.主机通过命令ipc ...

  10. Spring Boot 2.x 编写 RESTful API (一) RESTful API 介绍 & RestController

    用Spring Boot编写RESTful API 学习笔记 RESTful API 介绍 REST 是 Representational State Transfer 的缩写 所有的东西都是资源,所 ...