zoukankan      html  css  js  c++  java
  • Python自动化开发从浅入深-语言基础(字典)

     * 字典      2016-01-22


     形如 {'name':'zhaohong','age','56'}、{'host':'10.0.0.12','port':80} 为字典

    创建一个字典

    dic = {'k1':'v1','k2':v2}

    dic = dict(k1='v1',k2='v2')

    字典中的方法:

     

      获取字典中的key生成新的字典

      

     

     

    采用下面的方法获取字典值时,如果没有相应的key系统会报错。

    如果通过get方法取字典值,即使字典中没有所要的key也不会报错,只是返回None

    当所查找的字典中不存在的key,系统返回None,但如果不想返回None,而是想返回指定值,可以这样做:

    下例对keys,values,items用for循环取出相应的值

    -----------------------------------------------------

    -----------------------------------------------------

     

    pop需要指定key值

     

    -- 将字典中的keys和values转换为列表

    取下标值时出错,在python 2版本是可以的。

    原来,在python 3中,dict.keys()方法返回一个字典视图对象,它是作为一个set进行操作的。但测试仍然有问题....放着吧~~

    In Python 3, the dict.keys() method returns a dictionary view object, which acts as a set. Iterating over the dictionary directly also yields keys, so turning a dictionary into a list results in a list of all the keys:
    
    >>> test = {'foo': 'bar', 'hello': 'world'}
    >>> list(test)
    ['foo', 'hello']
    >>> list(test)[0]
    'foo'

    -- 思考

    集合为:

    [11,22,33,44,55,66,77,88,99,90,91,92]

    将所有大于66的值保存到字典的第一个key中,将小于66的值保存到第二个key的值中。

    即:dic = {'k1':大于66,'k2':小于等于66}

    
    
    dic = {}
    all_list = [11,22,33,44,55,66,77,88,99,90,91,92,93]
    for i in all_list:
        if i>66:
            if "k1" in dic.keys():
                dic['k1'].append(i)
            else:
                dic['k1']=[i,]   #[i,]是为了创建一个列表
        else:
            if "k2" in dic.keys():
                dic['k2'].append(i)
            else:
                dic['k2']=[i,]
    View Code
    
    
    
  • 相关阅读:
    CHAR和HEX互相转换
    Delphi之TComponent类
    Delphi 延迟函数 比sleep 要好的多
    Delphi中三种延时方法及其定时精度分析
    Cport 应用集合
    重命名数据库时提示无法用排他锁锁定数据库
    Bugzilla在XP下安装
    Web service 超过了最大请求长度
    调用webservice时提示对操作的回复消息正文进行反序列化时出错
    c# IL 指令解析
  • 原文地址:https://www.cnblogs.com/whiggzhaohong/p/5150424.html
Copyright © 2011-2022 走看看