Quantcast
Channel: LinE's Blog
Viewing all articles
Browse latest Browse all 25

Python第七课:字典 – 笔记

$
0
0

视频打包下载

下载地址:http://pan.baidu.com/s/1c02HoZm 密码: 03va

我自己做的笔记

https://onedrive.live.com/view.aspx?resid=27079372A35C6C12!350&app=OneNote&authkey=!AK-RNvDHBnuJHXM

主要知识点

字典可以看做上是一个变量定义的集合,也就是Key-Value的存储方式,类似于JSON的定义方法

字典是Python中唯一的映射类型(哈希表)

字典的对象(Value)是可变,但是字典的键必须使用不可变对象(Key)

一个字典中可以使用不同类型的键值

字典在遍历/迭代的时候是无序的

  • 字典的创建
  • 字典的定义使用花括号{},中加逗号,分隔,Key-Value之间使用冒号:来区别
    Key可以使用变量名(已定义的变量),数字和字符串
    Value可以使用变量名(已定义的变量)或任何变量类型

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    a = "K-Test"
    b = "V-Test"
    dic1 = {
        'key1': 'value1',
        a: b,
        3: 'value3'
    }
    print dic1
    {'key1': 'value1', 3: 'value3', 'K-Test': 'V-Test'}

    工厂方法创建字典
    1. dic1 = dict{}

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = dict{
        key1 = 'value1',
        key2 = 'value2',
    }
    print dic1
    {'key1': 'value1', 'key2': 'value'}

    Default_Value可以为任何数据类型的数据
    每一个Key的值都为Default_Value
    dic1 = dict.fromkeys([‘New_Key1′,’New_Key2′],’Default_Value’)

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = dict.fromkeys(['key1', 'key2', 'key3'], 'value')
    print dic1
    {'key3': 'value', 'key2': 'value', 'key1': 'value'}

  • 字典的索引
  • 字典的索引方法是一样的,不同的地方在于字典使用Key来索引Value

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 2,
        3: 'value3'
    }
    print dic1['key1']
    'value1'
    print dic1['key2']
    2
    print dic1[3]
    'value3'

  • 添加元素到字典
  • 设置新的Key和Value
    dic[‘New_Key’] = ‘New_Value’

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
    }
    dic1['key3'] = 'value3'
    print dic1
    {'key1': 'value1', 'key2': 'vaule2', 'key3': 'vaule3'}

  • 更新字典中的元素
  • 使用Key来更新Value
    dic1[‘Key’] = [‘New_Value’]

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
    }
    dic1['key1'] = 'value1'
    dic1['key2'] = 'value2'
    print dic1
    {'key2': 'value2', 'key1': 'vaule1'}

  • 删除字典中的元素
  • del函数删除
    del dic1[‘String’]

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3',
    }
    print dic1
    {'key2': 'value2', 'key1': 'vaule1', 'key3': 'vaule3'}
    del dic1['key1']
    {'key3': 'value3', 'key2': 'vaule2'}

    pop方法删除
    b. dic.pop(‘String’)
    删除字典中Key为str的元素并返回被删除的元素(弹出)

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3',
    }
    dic1.pop('key1')
    'value1'
    print dic1
    {'key3': 'value3', 'key2': 'vaule2'}

    清空整个字典内的元素
    dic.clear()
    删除字典中所有元素,但保留该字典(相当于把该字典置为空字典)

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3',
    }
    print dic1
    {'key1': 'value1', 'key3': 'value3', 'key2': 'vaule2'}
    dic1.clear()
    print dic1
    {}

    删除整个字典
    del dic1
    删除整个字典,完全不保留字典

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3',
        }
    print dic1
    {'key1': 'value1', 'key3': 'value3', 'key2': 'vaule2'}
    del dic1
    print dic1
                Traceback (most recent call last):
      File "", line 1, in 
        dic1
    NameError: name 'dic1' is not defined

  • 字典的常用方法
  • dic.items()
    以元组形式返回对应键值对

    ###############__Code__###############
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    dic1 = {"a": "1",
            "b": "2",
            "c": "3",
            "d": "4",
            "e": "5",
            }
    print dic1
    {'a': '1', 'c': '3', 'b': '2', 'e': '5', 'd': '4'}
    print dic1.items()
    [('a', '1'), ('c', '3'), ('b', '2'), ('e', '5'), ('d', '4')]

    此方法可以很方便的遍历字典并给对应变量赋值

  • 其他方法
  • 参考:http://www.linuxidc.com/Linux/2011-09/42950.htm


    Viewing all articles
    Browse latest Browse all 25

    Trending Articles