2.3字典

  字典是键值对的无序可变序列。键值之间用冒号隔开,相邻元素之间用逗号隔开,所有元素放在大括号之间{},键可以是Python中所有不可变的数据,不能用列表、元组、字典作为字典的键,键不可重复,值可以重复。

   globals()函数可以返回查看包含当前作用域内所有全局变量和值的字典,locals()函数返回当前作用域内所有局部变量和值的字典。

    例:

    >>>a=(1,2,3,4,5)

    >>>b='Hello world.'

    >>>def demo():

    a=3

    b=[1,2,3]

    print('locals:',locals())

    print('globals:',globals())

    >>>demo()

得到:locals:('a':3,'b':[1,2,3]}

   globals:{'a':(1,2,3,4,5),'b':'Hello world.','_builtins_':<module......}

2.3.1字典的创建与删除

   1.使用=将一个字典赋值给一个变量即可创建一个字典变量

   2.可以用dict()函数来用已有数据快速创建字典

    >>>keys=['a','b','c','d']

    >>>values=[1,2,3,4]

    >>>dictionary=dict(zip(keys,values))

    >>>print(dictionary)

   3.可以以给定内容为“键”,创建“值”为空的字典:

    >>>adict = dict.fromkeys(['name','age','sex'])

  删除:del加字典名称

2.3.2字典元素的读取

  字典的下标是键

一般方法:

  >>>aDict={'name':'Dong','sex':'male','age':37}

  >>>aDict['name']

  'Dong'

get()方法:print(aDict.get('address'))

items()方法可以返回字典的“键值对”列表,使用字典对象的key()方法可以读取键,使用字典对象的values()方法可以读取值

2.3.3字典元素的添加与修改

  1、给指定键的元素赋值时,如果有这个键,就给其赋值,如果没有这个键就新建一个键值对

  2、使用update()方法可一个将另一个字典中的“键值对“一次性的全部添加到当前对象中

    aDict.update({'a':'a','b':'b'})

  删除

  1、使用del命令删除指定键对应的元素

  2、使用clear()方法来删除字典中的所有元素

  3、使用Pop()方法删除并返回指定键的元素

  4、使用popitem()方法删除并返回字典中的一个元素

2.4集合

  集合是无序可变序列,和字典一样使用一对大括号来作为界定符,同一个集合元素不允许重复。

  2.4.1集合创建

    1、直接=赋给一个变量

    2、使用set()函数将列表、元组等其他可迭代对象转换成集合,如果原来的元素存在重复,那么只保留一个。

      >>>a_set=set(range(8,14))

      >>>b_set=set{[0,1,2,3,4,5,6,7,8])

    3、使用一个add()方法来增加元素,可以用del()方法来删除整个集合(pop(),remove(),clear()方法都可以)

  2.4.2集合运算

    并运算:>>>a_set|b_set

        >>>a_set.union(b_set)

    交运算: >>>a_set&b_set

        >>>a_set.intersection(b_set)

    差运算:>>>a_set-b_set

        >>>a_set.difference(b_set)

3、Python字典集合的更多相关文章

  1. python -- 字典 集合

    1.字典          定义:字典是以 key :value 的形式来保存数据,用{} 来表示,存储的是 key : value        查找效率比较高(注:字典存储数据时,用的是hash值 ...

  2. python --->字典 集合 学习笔记

    1.字典--->创建空字典:dict={} broa=["李宁",”耐克“,“阿迪达斯”,“鱼c工作室”] sloga=[“A”,“B”,“C”,“D”] dict={&qu ...

  3. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  4. Python学习笔记3-Python元组、数组、字典集合的操作

    在Python中数组中的每一项可以是不同的数据类型 元组:只能读不能写的数组 aTuple=(1,'abc','tmc',79.0,False) print aTuple[1:3] print typ ...

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

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

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

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

  7. Python 字典dict 集合set

    字典dict Python内置字典,通过key-value进行存储,字典是无序的,拓展hash names = ['Michael', 'Bob', 'Tracy'] scores = [95, 75 ...

  8. Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据

    Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据 学习目标 1.学会使用 filter 借助 Lambda 表达式过滤列表.集合.元组中的元素: 2.学会使用列表解析 ...

  9. 如何在列表,字典,集合中,根据条件筛选数据 -- Python数据结构与算法相关问题与解决技巧

    实际案例: 1.过滤掉列表 [3,9,-1,10,20,-2..]的负数 2.筛出字典{'LiLei':79,'Jim':88,'Lucy':92...}中值高于90的项 3.筛出集合 {77,89, ...

随机推荐

  1. js特效——自动滚动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. 【【henuacm2016级暑期训练】动态规划专题 E】Destroying Roads

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 首先. 这张图是无向无权图. 因此任意两点之间的最短路可以通过N^2的bfs轻易算出来. 即得到d[N+10][N+10] 考虑s[ ...

  3. 数据结构实现(四)二叉查找树java实现

    转载 http://www.cnblogs.com/CherishFX/p/4625382.html 二叉查找树的定义: 二叉查找树或者是一颗空树,或者是一颗具有以下特性的非空二叉树: 1. 若左子树 ...

  4. WinServer-AD操作常用powershell命令

    powershell 操作AD常用命令 查询AD中默认的密码策略 Get-ADDefaultDomainPasswordPolicy 查询AD中密码永不过期的用户 Get-ADUser -Filter ...

  5. 机器学习之&amp;&amp;Andrew Ng课程复习--- 聚类——Clustering

    第十三章.聚类--Clustering ******************************************************************************** ...

  6. jdbc14 及 jdbc16 共存所带来的问题【未完待续】

    在JAVA中JDK版本号与JDBC版本号的一致性十分重要,开发都们经常会忽略了这一点导致非常多不必要的错误. 昨天给客户排查了一个关于EDB在JBoss中使用时关于这方面的问题,希望给大家一点启示. ...

  7. jsp的凝视可能会影响页面载入速度

    在jsp页面使用"<!-- -->"的凝视,凝视里面的java代码还是会得到运行,能够再查看页面源码上看到运行完毕的内容,这样就会让不希望运行的代码得到运行.影响载入速 ...

  8. tensorflow入门教程和底层机制简单解说——本质就是图计算,自动寻找依赖,想想spark机制就明白了

    简介 本章的目的是让你了解和运行 TensorFlow! 在开始之前, 让我们先看一段使用 Python API 撰写的 TensorFlow 示例代码, 让你对将要学习的内容有初步的印象. 这段很短 ...

  9. nyoj--1036--非洲小孩(区间相交问题)

    非洲小孩 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 家住非洲的小孩,都很黑.为什么呢? 第一,他们地处热带,太阳辐射严重. 第二,他们不经常洗澡.(常年缺水,怎么洗 ...

  10. [JZOJ 5910] [NOIP2018模拟10.18] DuLiu 解题报告 (并查集+思维)

    题目链接: https://jzoj.net/senior/#contest/show/2530/0 题目: LF是毒瘤出题人中AK IOI2019,不屑于参加NOI的唯一的人.他对人说话,总是满口垃 ...