当前位置: 移动技术网 > IT编程>脚本编程>Python > python中字典的增删改查

python中字典的增删改查

2020年07月20日  | 移动技术网IT编程  | 我要评论

字典

  • 特点
    • 符号{}
    • 关键字dict
    • 保存的元素是key:value
列表 元组 字典
[] () {}
list tuple dict
ele ele key:value
  • 定义

    dict1 = {}#空字典
    dict2 = dict()
    dict3 ={'ID':03957348953894','name':'lucky','age':18}
    dict4 =dict([('name','lucky'),('age',18)])
    print(dict4)
    

字典的增删改查

  • 增加

    • 格式:dict6[key] = value

    • 特点:按照上面的格式,如果在字典中存在同名的key,则发生值的覆盖,如果没有同名的key,则实现的_添加功能_

      dict6['brand'] = 'huawei'
      print(dict6)#{'brand':'huawei'}
      dict6['brand'] = 'mi'
      print(dict6)
      dict6['type'] = 'p30pro'
      dict6['price'] = 9000
      dict6['color'] = 黑色
      
  • 案例

    用户注册功能:username、password、email、phone

print('---------欢迎来到注册界面----------')
database = []
while True:
    username = input('请输入用户名:')
    password = input('请输入密码:')
    repassword = input('确认密码:')
    email = input('请输入邮箱:')
    phone = input('输入手机号:')
    #定义一个字典
    user = {}
    #将信息存到字典中
    user['username'] = username
    if password == repassword:
        user['password'] = password
    else:
        print('两次密码不一致,重新输入……')
        continue
    user['phone'] = phone
    #保存到数据库
    database.append(user)
    answer = input('是否继续注册?(y/n)')
    if answer != 'y':
        break
print(database)
  • 查询元素

    修改:

    ​ list1[index] = new_value

    ​ dict1[key] = new _value

    查询元素:

    ​ list1[index] —>element

    dict1[key] —> value

  • 案例

    list1 = [3,5,7,8]
    print(list1[2])
    dict1 = {'1':'张三','2':'李四','3':'王五'}
    print(dict1['2'])
    dict2 = {'张三':100,'李四':99,'王五':98,'老刘':97}
    print(dict2['王五'])
    #考试分数大于99分的人,尝试对字典进行遍历
    for key,value in dict2:
        print(key,value)#遍历的结果是:就字典的key。
    
  • 字典里的函数

    #接着上面的
    print(dict2.items())
    for i in dict2.items():
        print(i)
    #考试成绩大于98分的人:
    for key,value in dict2.items():
        if value>98:
            print(key)
    

    运行结果:

    7
    李四
    98
    dict_items([(‘张三’, 100), (‘李四’, 99), (‘王五’, 98), (‘老刘’, 97)])
    (‘张三’, 100)
    (‘李四’, 99)
    (‘王五’, 98)
    (‘老刘’, 97)
    张三
    李四

  • get()函数

    • get(key) -->value 如果去不到值,会报错
    • get(key,default)–>value 如果能取到值,则返回字典中的值,如果去不到,则返回default的值
      • items() keys() values()
    print(dict2.get('赵飞',99)
    
  • 删除

    del dict[key]

    dict.pop(key,[default])

    dict.popitem()

    dict.clear()

    list1 = [3,6,32,6]
    del list1[1]
    print(list1)
    dict2 = {'张三':100,'李四':99,'王五':98,'老刘':97}
    del dict1['王五']
    print(dict1)
    #del dict1['wogiao']
    #字典的内置函数
    #dict1.remove('李四'),,,,,,,,pop(key,[default])根据key删除字典中的键值对,删除成功,返回value
    dict1.pop('李四')
    print(result)
    result = dict.pop('老铁','80')
    print(result)
    print(dict1)
    
    • 其他内置函数

      update() [ ] + [ ]合并操作

      fromkeys ( seq )

#dict1 = dict1 + dict2   报错!
dict1 = {0:'tom',1:'jack',2:'lucy'}
dict2 = {0:'lily','4':'ruby'}
result = dict1.update(dict2)
print(result)
print(dict1)
list1 = ['aa','bb','cc']
new_dict = dict.fromkeys(list1,10)
print(new_dict)

运行结果:

None
{0: ‘lily’, 1: ‘jack’, 2: ‘lucy’, ‘4’: ‘ruby’}
{‘aa’: 10, ‘bb’: 10, ‘cc’: 10}

本节教程来源

本文地址:https://blog.csdn.net/a_pogrammer/article/details/107443277

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网