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

    python 里面的字典很神奇,可以用来做各种东西,不过要注意的是,字典里面的键是不允许修改的!字典里面的键是不允许修改的! 字典里面的键是不允许修改的!  所以字典的键不能用可变对像,只能用不可变的。字典有很多操作,删除、查询(给定键查值)、修改值(键不可修改)等。

    一些高级用法稍后再更新了。

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # by Mercury_Lc
    
    dic = dict()  # 基本的字典创建,也可结合 zip 或者其他列表等转化建立空字典。
    print(dic)
    dic = {}    # 这样子也可以
    print(dic)
    
    dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
    print(dic)
    dic['age'] = 19  # 通过键来修改
    print(dic)
    
    del dic['sex']  # 删除这个键值对
    print(dic)
    
    dic.clear()  # 清空字典
    print(dic)
    
    dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
    del dic   # 删除掉字典,可以理解成销毁
    
    dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
    dic1 = dic.copy()  # 浅拷贝
    print(dic1)
    dic1['age'] = 19  # 改变copy的值,原来的值不变
    print(dic)
    print(dic1)
    
    
    if 'age' in dic:   # 判断这个键是否在字典中,有的话是 T,反之是 F。
        print('yes')
    else:
        print('no')
    
    dic = dic.fromkeys('Mercury')  # 依次选取字符串里面的字符当做键,也可以是一个元组,不可变对象,来当做键值
    print(dic)
    dic = dic.fromkeys('Mercury',100)  # 100为可选参数
    print(dic)
    
    dic = {'name':'Mercury_Lc', 'age':18, 'sex' : 'female'}
    print(dic.get('name',-1))  # 获得键对应的值,没有则返回-1
    print(dic.get('Name'),-1)
    
    print(dic.items()) # 分别输出键值对、键、值(值得话,这样子就可以把字典里面的东西放到 list 里面了)。
    print(dic.keys())
    print(dic.values())
    
    dic.pop('sex',-1)  # 删除相应的键对应的键值对、失败返回 -1
    print(dic)
    
    print(dic.popitem())  # 随机删除并返回删除的什么
    print(dic)
    

    运行结果:

    "F:Pycharm WorkplacevenvScriptspython.exe" "F:/Pycharm Workplace/test1.py"
    {}
    {}
    {'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
    {'name': 'Mercury_Lc', 'age': 19, 'sex': 'female'}
    {'name': 'Mercury_Lc', 'age': 19}
    {}
    {'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
    {'name': 'Mercury_Lc', 'age': 18, 'sex': 'female'}
    {'name': 'Mercury_Lc', 'age': 19, 'sex': 'female'}
    yes
    {'M': None, 'e': None, 'r': None, 'c': None, 'u': None, 'y': None}
    {'M': 100, 'e': 100, 'r': 100, 'c': 100, 'u': 100, 'y': 100}
    Mercury_Lc
    None -1
    dict_items([('name', 'Mercury_Lc'), ('age', 18), ('sex', 'female')])
    dict_keys(['name', 'age', 'sex'])
    dict_values(['Mercury_Lc', 18, 'female'])
    {'name': 'Mercury_Lc', 'age': 18}
    ('age', 18)
    {'name': 'Mercury_Lc'}
    
    Process finished with exit code 0
    
  • 相关阅读:
    有点忙啊
    什么是协程
    HDU 1110 Equipment Box (判断一个大矩形里面能不能放小矩形)
    HDU 1155 Bungee Jumping(物理题,动能公式,弹性势能公式,重力势能公式)
    HDU 1210 Eddy's 洗牌问题(找规律,数学)
    HDU1214 圆桌会议(找规律,数学)
    HDU1215 七夕节(模拟 数学)
    HDU 1216 Assistance Required(暴力打表)
    HDU 1220 Cube(数学,找规律)
    HDU 1221 Rectangle and Circle(判断圆和矩形是不是相交)
  • 原文地址:https://www.cnblogs.com/lcchy/p/10139416.html
Copyright © 2011-2022 走看看