• mg游戏娱乐城送11|mg游戏娱乐城送11【授权官网】

  • 发布时间:2016-01-19 09:26 | 作者:yc | 来源:互联网 | 浏览:1200 次
  • mg游戏娱乐城送11|mg游戏娱乐城送11【授权官网】

    一,字典

    1. 字典在其它编程说话中又称为相关数组或散列表;

    2. 特点:

    a. 颠末键值完成元素存取;

    b. 无序召集;

    c. 可变类型容器;

    d. 长度可变;

    e. 支撑异构;

    f. 支撑嵌套;

    3. 语法

    a. d1 = {key1:value1, key2:value2, ...} ;

    b. d1 = {}//注解空字典;

    例如:

    In [435]: d1 = {'x':32,'y':[1,2,3]}

    In [440]: d1['y'][2:]

    Out[440]: [3]

    In [441]: d1['y'][1:]

    Out[441]: [2, 3]

    4. 常用操作

    In [448]: d1.[table]

    d1.cleard1.getd1.iteritemsd1.keysd1.setdefaultd1.viewitems

    d1.copyd1.has_keyd1.iterkeysd1.popd1.updated1.viewkeys

    d1.fromkeysd1.itemsd1.itervaluesd1.popitem

    d1.valuesd1.viewvalues

    二,字典的常用操作示例

    1. len得到元素个数

    例如:

    In [445]: len(d1)

    Out[445]: 2

    In [446]: print d1

    {'y': [1, 2, 3], 'x': 504}

    In [447]: d1

    Out[447]: {'x': 504, 'y': [1, 2, 3]}

    2.字典的仿制

    例如:

    In [449]: d2 = d1.copy()

    In [450]: d2

    Out[450]: {'x': 504, 'y': [1, 2, 3]}

    In [451]: id(d1)

    Out[451]:

    mg游戏娱乐城送11|mg游戏娱乐城送11【授权官网】In [452]: id(d2)

    Out[452]:

    In [453]: d2 = d1

    In [454]: id(d2)

    Out[454]:

    In [455]: id(d1)

    Out[455]:

    3. get得到对应键的值

    例如:

    In [456]: d1

    Out[456]: {'x': 504, 'y': [1, 2, 3]}

    In [457]: d1.get('x')

    Out[457]: 504

    In [458]: d1.get('y')

    Out[458]: [1, 2, 3]

    In [459]: d1.get('z')

    In [461]: d1['x']

    Out[461]: 504

    In [462]: d1['z']

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

    KeyErrorTraceback

    (most recent call last)

    in ()

    ----> 1 d1['z']

    KeyError: 'z'

    4.判别元素

    例如:

    In [463]: d1.has_key('x')

    Out[463]: True

    In [464]: d1.has_key('z')

    Out[464]: False

    In [465]: d1.has_key('')

    Out[465]: False

    5. 把字典键值都拆成元组列表

    例如:

    In [466]: d1.items()

    Out[466]: [('y', [1, 2, 3]), ('x', 504)]

    6.变量解包

    例如:

    In [469]: t1,t2 = d1.items()

    In [471]: print t1

    ('y', [1, 2, 3])

    In [472]: print t2

    ('x', 504)

    In [474]: t1,t2,t3 = d1.items()

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

    ValueErrorTraceback (most

    recent call last)

    in ()

    ----> 1 t1,t2,t3 = d1.items()

    ValueError: need more than 2 values to unpack

    7.键和键值

    例如:

    In [477]: m1,m2 = {'x':1,'y':2}

    In [478]: print m1

    y

    In [479]: print m2

    x

    In [480]: d1

    Out[480]: {'x': 504, 'y': [1, 2, 3]}

    In [481]: d1.keys()

    Out[481]: ['y', 'x']

    In [482]: d1.values()

    Out[482]: [SBcom[1, 2, 3], 504]

    8.popitem随机弹出键值映射

    例如:

    In [486]: d1.pop('y')

    Out[486]: [1, 2, 3]

    In [487]: d1

    Out[487]: {'x': 504}

    In [488]: d2 = {'x':1,'y':2,'z':3}

    In [489]: d2.popitem()

    Out[489]: ('y', 2)

    In [490]: d2

    Out[490]: {'x': 1, 'z': 3}

    9.update吞并掩饰笼罩键值

    例如:

    In [495]: d1

    Out[495]: {'x': 504}

    In [496]: d1 = {'x':1,'y':2}

    In [497]: d2 = {'m':21,'n':76,'y':44}

    In [498]: d1.update(d2)

    In [499]: print d1

    {'y': 44, 'x': 1, 'm': 21, 'n': 76}

    10.iteritems回来迭代器目标

    用于遍历目标中的每一个元素

    例如:

    In [507]: d1

    Out[507]: {'m': 21, 'n': 76, 'x': 1, 'y': 44}

    In [500]: help(dict.iteritems)

    In [501]: d1.iteritems()

    Out[501]://回来迭代器的地址

    In [512]: i1 = d1.iteritems()

    In [513]: i1.next()

    Out[513]: ('y', 44)

    In [514]: i1.next()

    Out[514]: ('x', 1)

    In [515]: i1.next()

    Out[515]: ('m', 21)

    In [516]: i1.next()

    Out[516]: ('n', 76)

    In [517]: i1.next()

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

    StopIterationTraceback (most

    recent call last)

    in ()

    ----> 1 i1.next()

    StopIteration:

    11.iterkeys迭代键

    例如:

    In [519]: i2 = d1.iterkeys()

    In [520]: i2

    Out[520]:

    In [521]: i2.next()

    Out[521]: 'y'

    In [522]: i2.next()

    Out[522]: 'x'

    In [523]: i2.next()

    Out[523]: 'm'

    In [524]: i2.next()

    Out[524]: 'n'

    In [525]: i2.next()

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

    StopIterationTraceback (most

    recent call last)

    in ()

    ----> 1 i2.next()

    StopIteration:

    12.itemvalues迭代键值

    例如:

    In [526]: i3 = d1.itervalues()

    In [527]: i3.next()

    Out[527]: 44

    In [528]: i3.next()

    Out[528]: 1

    In [529]: i3.next()

    Out[529]: 21

    In [530]: i3.next()

    Out[530]: 76

    In [531]: i3.next()

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

    StopIterationTraceback (most

    recent call last)

    in ()

    ----> 1 i3.next()

    StopIteration:

    13. viewitems显现键值对拆分的元组

    例如:

    In [536]: d1

    Out[536]: {'m': 21, 'n': 76, 'x': 1, 'y': 44}

    In [538]: d1.viewitems()

    Out[538]: dict_items([('y', 44), ('x', 1), ('m', 21), ('n', 76)])

    14.viewitems显现字典的布局措施

    例如:

    In [533]: d2 = dict(name='jerry',gender='m',age=42)

    In [534]: d2.viewitems()

    Out[534]: dictaoaopa_items([('gender', 'm'), ('age', 42), ('name',

    'jerry')])

    In [535]: d2

    Out[535]: {'age': 42, 'gender': 'm', 'name': 'jerry'}

    15.viewkeys显现键

    例如:

    In [541]: d2.viewkeys()

    Out[541]: dict_keys(['gender', 'age', 'name'])

    16.viewvalues显现键值

    例如:

    In [543]: d2.viewvalues()

    mg游戏娱乐城送11|mg游戏娱乐城送11【授权官网】

    Out[543]: dict_values(['m', 42, 'jerry'])

    17.运用zip回来序列

    例如:

    In [544]: zip('xyz','123')

    Out[544]: [('x', '1'), ('y', '2'), ('z', '3')]

    In [545]: zip('xyz','1234')

    Out[545]: [('x', '1'), ('y', '2'), ('z', '3')]

    In [546]: zip('xyzm','123')

    Out[546]: [('x', '1'), ('y', '2'), ('z', '3')]

    In [547]: zip('xyz','123','abc')

    Out[547]: [('x', '1', 'a'), ('y', '2', 'b'), ('z', '3', 'c')]

    18.运用zip布局字典

    例如:

    In [549]: dict(zip('xyz','123'))

    Out[549]: {'x': '1', 'y': '2', 'z': '3'}

    这篇文章出自 “Jessen Liu的博文” 博客,请必须保存此出处http://zkhylt.blog.51cto.com//

  • 相关内容

友情链接: