zoukankan      html  css  js  c++  java
  • python之字典一

    字典的定义:     

    前面我们说过列表,它适合于将值组织到一个结构中并且通过编号对其进行引用。字典则是通过名字来引用值的数据结构,并且把这种数据结构称为映射,字典中的值没有特殊的顺序,都存储在一个特定的键(key)下,键可以是数字、字符串甚至元组。字典也是python中唯一内建的映射类型。

    字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:

    d = {key1 : value1, key2 : value2 }

    可以用dict函数通过关键字的参数来创建字典:

    >>> d = dict (name='wzw',age= 22)
    >>> d
    {'name': 'wzw', 'age': 22}

    键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。

    >>> dict = {'a': 1, 'b': 2, 'b': '3'}
    >>> dict
    {'a': 1, 'b': '3'}

    访问字典中的值:

    dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
    print( "dict['Name']: ", dict['Name'])
    print( "dict['Age']: ", dict['Age'])
    运行结果:
    [python@master tmp]$ python3 a.py 
    dict['Name']:  Zara
    dict['Age']:  7

    修改字典中的值:

    dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
     
    print( "dict['Age']: ", dict['Age'])
    修改健值 dict[
    'Age']=10 print( "dict['Age']: ", dict['Age']) 新增健值 dict['school']='henan school' print(dict) 运行结果: [python@master tmp]$ python3 a.py dict['Age']: 7 dict['Age']: 10 {'Name': 'Zara', 'Age': 10, 'Class': 'First', 'school': 'henan school'}

    删除字典元素:

    能删单一的元素也能清空字典,清空只需一项操作。显示删除一个字典用del命令

    dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
    del dict['Name']; # 删除键是'Name'的条目
    print(dict)
    dict.clear();     # 清空词典所有条目
    print(dict)
    del dict ;        # 删除词典
    运行结果:
    [python@master tmp]$ python3 b.py
    {'Age': 7, 'Class': 'First'}
    {}

    字典的特性:

    字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。

    两个重要的点需要记住:

    1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

    2)键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行

    字典和列表的区别:
         a. 字典的键可以是任意的不可变类型
         b. 成员资格查找时查找的时键而不是值
         c. 即使键起初不存在也可以为它直接赋值,字典会自动添加新的项
         d. 字典是不可修改的

    字典的内置函数

    cmp(dict1, dict2)  #比较两个字典元素。 --这个是python2.x中的比较 在python3中 已经没有cmp函数,被operator模块代替
    len(dict)          #计算字典元素个数,即键的总数。
    str(dict)          #输出字典可打印的字符串表示。
    type(variable)     #返回输入的变量类型,如果变量是字典就返回字典类型。

    内置函数Operator()

    import operator  #首先要导入运算符模块
    operator.gt(1,2) #意思是greater than(大于)
    operator.ge(1,2) #意思是greater and equal(大于等于)
    operator.eq(1,2) #意思是equal(等于)
    operator.le(1,2) #意思是less and equal(小于等于)
    operator.lt(1,2) #意思是less than(小于)
    例子:
    import operator
    dict1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
    dict2 = {'Name': 'Zara', 'Age': 8, 'Class': 'First'}
    result=operator.eq(dict1,dict2)
    print (result)
    结果:
    [python@master tmp]$ python3 b.py
    False
    函数的返回值是布尔值

    内置函数len()

    dict1 = {'Name': 'Zara', 'Age': 8, 'Class': 'First'}
    lenth=len(dict1)
    print (lenth)
    结果:
    [python@master tmp]$ python3 b.py 
    3

    内置函数str()

    dict1 = {'Name': 'Zara', 'Age': 8, 'Class': 'First'}
    lenth=str(dict1)
    print (lenth)
    结果:
    [python@master tmp]$ python3 b.py 
    {'Name': 'Zara', 'Age': 8, 'Class': 'First'}

    内置函数type()

    dict1 = {'Name': 'Zara', 'Age': 8, 'Class': 'First'}
    lenth=type(dict1)
    print (lenth)
    结果:
    [python@master tmp]$ python3 b.py 
    <class 'dict'>

    今天的你,是否充满活力?

  • 相关阅读:
    Centeos7搭建selenium+Chrome浏览器
    数据结构学习篇之栈和队列
    数据结构学习篇之线性表
    Tornado基础学习篇
    Python控制函数运行时间
    python线程实现异步任务
    Python实现几种简单的排序算法
    python爬虫遇到会话存储sessionStorage
    Python 有哪些优雅的代码实现让自己的代码更pythonic?
    Ubuntu查看端口使用情况,使用netstat命令:
  • 原文地址:https://www.cnblogs.com/hello-wei/p/9523931.html
Copyright © 2011-2022 走看看