Python : 字典

作者: Sonnar | 来源:发表于2020-04-15 11:28 被阅读0次

    字典是无序键值对{key:value}集合,同一字典key不能重复。

    >>> data_dcit ={'Code' : ['000895.XSHE', '002840.XSHE', '002726.XSHE'],
            'PubDate' : '2008-01-01'}
    >>> print(data_dcit)
    {'Code': ['000895.XSHE', '002840.XSHE', '002726.XSHE'], 'PubDate': '2008-01-01'}
    
    • 创建新的键值
    >>> data_dcit['Years' ] =  [str(x) for x in range(2008,2019)]
    >>> print(data_dcit)
    {'Code': ['000895.XSHE', '002840.XSHE', '002726.XSHE'], 'PubDate': '2008-01-01', 'Years': ['2008', '2009', '2010', '2011', '2012', '2013', '2014', '2015', '2016', '2017', '2018']}
    
    • 使用del关键字删除任意指定的键值对
    >>> del data_dcit['Years']
    >>> print(data_dcit)
    {'Code': ['000895.XSHE', '002840.XSHE', '002726.XSHE'], 'PubDate': '2008-01-01'}
    
    • 使用 in 关键字查询指定的键值是否存在于字典中。不过,字典中的键必须是不可变类型,不能使用列表作为键。
    >>> print('PubDate' in data_dcit)
    True
    >>> print('Date' in data_dcit)
    False
    
    • dict()可以从包含键值对的元组中创建字典。
    >>> tp = (('Code','000895.XSHE'),('PubDate','2008-01-01'))
    >>> dic = dict(tp)
    >>> print(dic)
    {'Code': '000895.XSHE', 'PubDate': '2008-01-01'}
    
    • 如果想遍历一个字典,使用字典的items()方法。
    >>> for x, y in dic.items():
            print("{} is {}".format(x, y))
    Code is 000895.XSHE
    PubDate is 2008-01-01
    
    • 往字典里的元素添加数据,需要先判断这个元素是存在,不存在则创建一个值。为了提高性能,可以使用dict.setdefault(key,default)来完成。
    >>> data = {}
    >>> data.setdefault('names', []).append('Sonnar')
    >>> print(data)
    {'names': ['Sonnar']}
    
    >>> data.setdefault('names', []).append('Python')
    >>> print(data)
    {'names': ['Sonnar', 'Python']}
    
    • 索引一个不存在的键将会抛出keyError错误。可以使用dict.get(key.default)来索引键。如果不存在,那么返回指定的default值。
    >>> data['age']
    ---------------------------------------------------------------------------
    KeyError                                  Traceback (most recent call last)
    <ipython-input-47-bdf3e9db6c24> in <module>
    ----> 1 data['age']
    
    KeyError: 'age'
    >>> data.get('age', 'N/A')
    'N/A'
    

    相关文章

      网友评论

        本文标题:Python : 字典

        本文链接:https://www.haomeiwen.com/subject/svjqvhtx.html