美文网首页
python3基础语法工具书(3)

python3基础语法工具书(3)

作者: 张小张x86 | 来源:发表于2019-03-15 14:58 被阅读0次

    字典

    字典旨在让你能够轻松地找到特定的键,以获悉其值。

    字典的创建和使用

    方法一 直接创建

    >>> phonebook = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
    {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
    

    方法二 从其它数据结构创建

    >>> items = [('name', 'Gumby'), ('age', 42)] 
    >>> d = dict(items)
    >>> d
    {'age': 42, 'name': 'Gumby'}
    

    方法三 关键字实参创建

    >>> d = dict(name='Gumby', age=42) 
    >>> d
    {'age': 42, 'name': 'Gumby'}
    

    字典的基本操作

    >>> d = dict(key1='value1', key2 = 'value2', key3 = 'value3',key4='value4')
    >>> len(d)
    4
    
    >>> d['key2']
    'value2'
    
    >>> d['key2'] = 'valuetest'
    >>> d
    {'key1': 'value1', 'key2': 'valuetest', 'key3': 'value3', 'key4': 'value4'}
    
    >>> del d['key2']
    >>> d
    {'key1': 'value1', 'key3': 'value3', 'key4': 'value4'}
    
    >>> 'key2' in d
    False
    

    字典方法

    • clear
    >>> phonebook = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
    >>> phonebook.clear()
    >>> phonebook
    {}
    
    • copy
      方法copy返回一个新字典,其包含的键值对与原来的字典相同(这个方法执行的是浅复制, 因为值本身是原件,而非副本)。
    >>> x = {'username': 'admin', 'machines': ['foo', 'bar', 'baz']}
    >>> y = x.copy()
    >>> y['username'] = 'mlh'
    >>> y['machines'].remove('bar')
    >>> print(y)
    >>> print(x)
    {'username': 'mlh', 'machines': ['foo', 'baz']}
    {'username': 'admin', 'machines': ['foo', 'baz']}
    
    • deepcopy
    >>> from copy import deepcopy
    >>> d = {}
    >>> d['names'] = ['Alfred', 'Bertrand'] 
    >>> c = d.copy()
    >>> dc = deepcopy(d)
    >>> d['names'].append('Clive')
    >>> print(c)
    >>> print(dc)
    {'names': ['Alfred', 'Bertrand', 'Clive']}
    {'names': ['Alfred', 'Bertrand']}
    
    • fromkeys
    >>> {}.fromkeys(['name', 'age'])
    {'name': None, 'age': None}
    
    >>> dict.fromkeys(['name', 'age']) 
    {'age': None, 'name': None}
    
    >>> dict.fromkeys(['name','age'],'(unknown)')
    {'name': '(unknown)', 'age': '(unknown)'}
    
    • get
    >>> dict = {'key1':'value1','key2':'value2','key3':'value3'}
    >>> dict.get('keyx')
    None
    
    • items
    >>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'spam': 0}
    >>> d.items()
    dict_items([('title', 'Python Web Site'), ('url', 'http://www.python.org'), ('spam', 0)])
    
    >>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'spam': 0}
    >>> a = list(d.items())
    >>> a[0]
    ('title', 'Python Web Site')
    
    • keys
    >>> dict = {'key1':'value1','key2':'value2','key3':'value3'}
    >>> a = list(dict.keys())
    >>> a[0]
    'key1'
    
    • pop
      方法pop可用于获取与指定键相关联的值,并将该键值对从字典中删除
    >>> dict = {'key1':'value1','key2':'value2','key3':'value3'}
    >>> dict.pop('key2')
    'value2'
    >>> dict
    {'key1': 'value1', 'key3': 'value3'}
    
    • popitem
      popitem随机地弹出一个字典项
    >>> d = {'url': 'http://www.python.org', 'spam': 0, 'title': 'Python Web Site'} 
    >>> d.popitem()
    ('url', 'http://www.python.org')
    >>> d
    {'spam': 0, 'title': 'Python Web Site'}
    
    • setdefault
      获取与指定键相关联的值,若字典不包含指定的键,则在字典中添加指定的键值对。
    >>> d = {}
    >>> d.setdefault('name', 'N/A') 
    'N/A'
    >>> d
    {'name': 'N/A'}
    >>> d['name'] = 'Gumby'
    >>> d.setdefault('name', 'N/A')
    'Gumby'
    >>> d
    {'name': 'Gumby'}
    
    • update
      方法update使用一个字典中的项来更新另一个字典
    >>> d = {'title': 'Python Web Site',\
    'url': 'http://www.python.org',\
    'changed': 'Mar 14 22:09:15 MET 2016',}
    >>> x = {'title': 'Python Language Website'}
    >>> d.update(x)
    >>> d
    {'title': 'Python Language Website',
     'url': 'http://www.python.org',
     'changed': 'Mar 14 22:09:15 MET 2016'}
    
    • values
      方法values返回一个由字典中的值组成的字典视图
    >>> d = {}
    >>> d[1] = 1
    >>> d[2] = 2
    >>> d[3] = 3
    >>> d[4] = 1
    >>> d.values() 
    dict_values([1, 2, 3, 1])
    

    相关文章

      网友评论

          本文标题:python3基础语法工具书(3)

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