ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python_05_day

2019-12-07 21:50:59  阅读:208  来源: 互联网

标签:05 Python age list dic print hobby day 字典


一、字典

  • 为什么用字典?

    • 列表虽可存大量数据,但数据间关联性不强,而字典可以
    • 列表的查询速度较慢,字典较快
  • 字典是什么?

    • 一种容器型数据类型:dict
  • 如何使用字典?

    • 首先将数据类型分类为:

      • 可变(不可哈希):list dict set
      • 不可变(可哈希):str bool int tuple
    • 字典形式:

      • dic = {'太白':
                 {'name': '太白金星',
                  'age': 18, 
                  'sex': '男'} }
      • 字典的键必须为不可变(可哈希)的数据类型(bool tuple基本不用)

      • 字典的值可以为任意数据类型、对象

  • 字典的优缺点?

    • 优点:查询速度非常快,存储具有关联性的数据
    • 缺点:以空间换时间
1、#字典的创建
#方法一
dic = dict((('one', 1), ('two', 2), ('three', 3)))
print(dic)

#方法二
dic = dict(one=1, two=2, three=3)
print(dic)

#方法三
dic = dict({'one': 1, 'two': 2, 'three': 3})
print(dic)


2、#字典增加
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
dic['sex'] = '男'  #直接增加
print(dic)

dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
dic.setdefault('hobby', '球类运动')  
dic.setdefault('age', 45)           #setdefault 有则不变,无则增加
print(dic)

3、#字典修改
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
dic['age'] = 23     #直接修改
print(dic)

4、#字典删除
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
ret = dic.pop('hobby','没有此键')
print(ret)          # pop 按照键删除键值对, 有返回值
print(dic)          # 设置第二个参数不会报错,找不到返回第二参数

dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
del dic['age']      # 找不到会报错
print(dic)

5、#字典清空
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
dic.clear()
print(dic)

6、#字典查值
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
print(dic['hobby_list'])    # 找不到会报错

dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
l1 = dic.get('hobby_list1','没有此键sb')  # 可以设置返回值
print(l1)

7、#字典的 keys values items
dic = {'name': '太白', 'age': 18, 'hobby_list': ['直男', '钢管', '开车']}
print(dic.keys(),list(dic.keys()))
print(dic.values(),list(dic.values()))
print(dic.items())
for key,value in dic.items():
    print(key,value)

标签:05,Python,age,list,dic,print,hobby,day,字典
来源: https://www.cnblogs.com/lizhihang/p/12003553.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有