zoukankan      html  css  js  c++  java
  • Python数据类型-字典

    字典(dict)
    字典是key:value形式的一种表达形式,例如在Java中有map,JavaScript中的json,Redis中的hash等等这些形式。字典可以存储任意的对象,也可以是不同的数据类型。
    1、字典的定义
    A = dict(a=1, b=2)
    A = {"name":"yangjian"}
    A = dict([("name","yangjian"),("age",18)])

    2、字典常用的方法

    get(k)    # 返回key所对应的value
    setdefault(k,v)     # 如果k不存在,设置一个默认值v;如果k存在,返回k所对应的v
    
    keys()                  # 获得所有的keys
    values()               # 获得所有的values
    iteritems()            #  生成一个对象,每循环一次生成一个k:v   for i j in d.iteritems():print(i,j)   Python才有这个方法,Python3为items()
    update()               # m.update(n),其中m,n都是字典
    pop(k)                  # 删除k:v对应的元素
    copy()                  # 复制
    
    zip(l1,l2)              # 高阶函数,dict(zip(l1,l2)),把l1和l2转换成字典,其中l1,l2是列表

    例子:

    x = {"name":"yangjian","age":18}
    print(x.get("name"))
    # yangjian
    
    print(x.get("name1","hello"))   # name1并不存在,所以要给一个默认值
    # hello
    
    print(x.keys())
    # dict_keys(['name', 'age'])
    
    print(x.values())
    # dict_values(['yangjian', 18])
    
    print(x.items())  # 字典变成列表,列表里面是元组
    # dict_items([('name', 'yangjian'), ('age', 18)])
    
    y = x.copy()
    print(y)
    # {'name': 'yangjian', 'age': 18}
    
    l1 = ["a","b","c"]
    l2 = ["1","2","3"]
    print(dict(zip(l1,l2)))
    # {'a': '1', 'b': '2', 'c': '3'}

    强制类型转换

    str()
    int()
    list()
    dict()
    tuple()

    例子:

    # 把列表l1强制转换成元组
    l1 = ["a","b","c"]
    print(tuple(l1))
    ('a', 'b', 'c')
    xrange()和range()
    在python3里面xrange()默认就是range()
    for  i in range(0,3):
        print(i)
    # 结果如下
    0
    1
    2
    raw_input()和input()
    在python3中已经没有raw_input(),默认只有input()
    try:
        name = raw_input("Please input your name:")
    except Exception as e:
        name = input("Please input your name:")
    finally:
        print("hello {0}".format(name))
    len()
    查看字典长度
    d = {"name":"yangjian","age":18}
    print(len(d))
    # 2
    type()
    查看对象的类型
    print(type(d))
    # <class 'dict'>
    isinstance()
    判断一个对象是否是一个已知的类型
    a = 2
    print(isinstance(a,int))
    # True
    enumerate()
    对于一个可迭代的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
    l1 = [1,2,3,4,5]
    print(enumerate(l1))
    for i in enumerate(l1):
        print(i)
    # 结果如下
    <enumerate object at 0x0000000002138708>
    (0, 1)
    (1, 2)
    (2, 3)
    (3, 4)
    (4, 5)
    hasattr()
    判断一个对象是否有某个属性
    L = ["a","b","a"]
    print(hasattr(L,"append"))
    # True
  • 相关阅读:
    解决response在controller返回乱码的解决方式
    Injection of autowired dependencies failed;错误解决
    sql mybatis 使用concat乱码
    【算法基础】欧几里得gcd求最大公约数
    sql视图和表的区别
    在idea下创建maven
    Arrays.sort()自定义排序
    数组
    java 遍历数组
    抽象与接口
  • 原文地址:https://www.cnblogs.com/yangjian319/p/8686375.html
Copyright © 2011-2022 走看看