• Python——Dict


    Python字典(Dictionary)

    字典是一种可变容器模型,可存储任意类型对象。

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

     d = {key1 : value1, key2 : value2 }

    字典的特点:

    键必须是唯一的,但值则不必唯一。

    值可以取任何数据类型,但键必须是不可变的类型。

      不可变类型:数字、字符串、元组;

      可变类型:列表、字典。

    字典中键值是无序的。

    1、创建字典

    方法1:

    1 dic = {'ID':'123124','name':'oliver','age':18

    输出

    {'name': 'oliver', 'age': 18, 'ID': '123124'}

    方法2:

    1 dic = dict((('ID','234234'),))   #括号后的逗号表示第二对括号里边是一个序列

    输出:

    {'ID': '234234'}

    2、访问字典

    通过key去查找。

    例1:

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(dic['name'])

    输出:

    oliver

    例2:

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(list(dic.keys()))

    输出:

    ['age', 'ID', 'name']

    例3:

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(list(dic.values()))

    输出:

    18, '123124', 'oliver']

    例4:

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(list(dic.items()))

    输出:

    [('ID', '123124'), ('age', 18), ('name', 'oliver')]

    2、更新字典

    若不存在,将dic2中的键值加入dic;若存在,则更新值
    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 dic2 = {'1':'122','123':'123'}
    3 dic.update(dic2)
    4 print(dic)

    输出:

    {'age': 18, 'ID': '123124', '1': '122', 'name': 'oliver', '123': '123'}

    2、删除字典

    清空字典

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(dic.clear()) 

    输出:

    None

    删除键值对

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 del dic['name'] 
    3 print(dic)

    输出:

    {'age': 18, 'ID': '123124'}

    删除整个字典

    1 del dic5 
    2 print(dic5)

    输出:

    name 'dic5' is not defined

    删除键值对,并返回该key对应的值

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 print(dic.pop('age'))

    输出:

    18
    {'ID': '123124', 'name': 'oliver'}

    随机删除键值对,并以元组的形式返回删除的键值对

    1 a = dic.popitem() 
    2 print(a,dic)

    输出:

    ('ID', '123124') {'age': 18, 'name': 'oliver'}

    setdefault()

    如果字典中存在此key,则不做修改;如果不存在,则添加键值。该方法还可以返回添加的值。

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 ret = dic.setdefault('hobby','film')
    3 print(dic)
    4 print(ret)

    输出:

    {'name': 'oliver', 'ID': '123124', 'hobby': 'film', 'age': 18}
    film

    fromkeys()

     创建一个新字典。

    1 dic6=dict.fromkeys(['host1','host2','host3'],'test')
    2 print(dic6)

    输出:

    {'host2': 'test', 'host1': 'test', 'host3': 'test'}

    sorted()

    将字典中的键进行排序。

    1 dic = {111:'aa',554:'bb',211:'ds',121:'asdf'}
    2 print(sorted(dic))

    输出:

    [111, 121, 211, 554]

    按照键对字典进行排序。

    1 dic = {111:'aa',554:'bb',211:'ds',121:'asdf'}
    2 print(sorted(dic.items()))

    输出:

    [(111, 'aa'), (121, 'asdf'), (211, 'ds'), (554, 'bb')]

    has_keys()

    Python 2中使用has_keys()判断指定的key在字典中是否存在。存在则返回True。

    1 dic={5:'555',2:'666',4:'444'}
    2 dic.has_keys(5)

    Python 3中的判断方法:

    1 print(5 in dic)

    3、字典遍历

    1 dic = {'ID':'123124','name':'oliver','age':18}
    2 for i in dic:
    3     print(i,dic[i])

    输出:

    name oliver
    age 18
    ID 123124
  • 相关阅读:
    SoftMax 回归(与Logistic 回归的联系与区别)
    OneNote转PDF
    数据库的模式分解相关算法规范步骤
    机器学习
    Java学习
    K-means 聚类
    Java学习
    [DBNETLIB][ConnectionOpen(connect()).]SQL Server 不存在或拒绝访问解决方方法
    sql语句技巧
    刚看到《SQL语法大全》、补全一下
  • 原文地址:https://www.cnblogs.com/pyramid1001/p/5800797.html
Copyright © 2020-2023  润新知