zoukankan      html  css  js  c++  java
  • dict 、set 详解

    创建个子字典 用大括号 {}
    字典是包括 key 和value

    d = {
    'Adam': 95,
    'Lisa': 85,
    'Bart': 59
    }
    print 'Adam:',d.get('Adam')
    print 'Lisa:',d.get('Lisa')
    print 'Bart:',d.get('Bart')

    .get 是在查询字典时,如果查询的key不存在,值返回None,防止查询的key不存在而报错。

    往字典中添加数据时使用 dict[key]=value;去创建 

    d = {
    95: 'Adam',
    85: 'Lisa',
    59: 'Bart'
    }


    d[72]='Paul'

    1、字典是查找数据速度快,但是占用内存大;list正好相反,占用内存小,查找速度慢;字典的查找是用过key来查找的,所有dict的key不能重复,内容也是无序的;字典中可以再存放字典、list、str

    2、字典的key 元素必须是不可以变化的,因为查找是通过key来查找;python 的基础数据类型如 字符串、整型、浮点型 都是不可变的,都可以做key,list是可变的不能作为key来使用;tuple 是不可以变化的,也可以作为dict的key

    3、for 循环可以遍历list,同样也可以遍历dict;for 遍历dict的key,可以根据遍历的key,查找出对应value;

    d = {
    'Adam': 95,
    'Lisa': 85,
    'Bart': 59
    }
    for i in d :
    print i ,':',d[i]

    4、set ;什么是set ,set类似于dict的key;set是持有一系列元素,元素中没有重复,而且也是无序的

    创建set的方式是调用set()函数并传入一个list,list的元素将做为set的元素

    setpr=set(['a','b','c'])

    print setpr

    5、set 是不包含重复元素;当有重复元素时候,可使用set去掉list中的重复元素

    6、set的内部结构和dict很像,但是set不存储value,因此判断一个元素是否存在在set中速度很快

    7、set 也是可以for 遍历

    s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
    for x in s:
    print x[0],':',x[1]

    8、set 中添加、删除 元素 

    set 的add()方法;如果set中存在元素,不会报错,也不会添加进去

    s=set([1,2,3])

    s.add(4)

    print s

    set 的removre()方法

    s=set([1,2,3,4])

    s.remove(4)

    s = set(['Adam', 'Lisa', 'Paul'])
    L = ['Adam', 'Lisa', 'Bart', 'Paul']
    for i in L:
    if i in s :
    s.remove(i)

    else:
    s.add(i)
    print s

  • 相关阅读:
    Java线程中run和start方法的区别
    dwr+spring集成
    Lucene入门
    struts2之单个文件上传
    利用jQuery接受和处理xml数据
    struts2之多个文件上传
    Google开源项目二维码读取与生成工具ZXing
    C# Regex 深入正则表达式
    android多分辨率多密度下界面适配方案
    [转]C#.net编程创建 Access 文件和 Excel 文件
  • 原文地址:https://www.cnblogs.com/zhzhao/p/4231668.html
Copyright © 2011-2022 走看看