• 字典 dict


      字典是python中唯一的映射类型,python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。

      字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    dic['li'] = ["a","b","c"]print(dic) setdefault 在字典中添加键值对,如果只有键那对应的值是none,但是如果原字典中存在设置的键值对,则他不会更改或者覆盖。
    # dic.setdefault('k','v')
    # print(dic)  # {'age': 18, 'name': 'jin', 'sex': 'male', 'k': 'v'}
    # dic.setdefault('k','v1')  # {'age': 18, 'name': 'jin', 'sex': 'male', 'k': 'v'}
    # print(dic)

    dic['name'] = 'jinxin'
    print(dic)
    update 将dic1 里面的键值对覆盖并添加到dic里面 dic.update(dic1)
    print(dic) print(dic1)

    dic_pop = dic.pop("a",'无key默认返回值') # pop根据key删除键值对,并返回对应的值,如果没有key则返回默认返回值v 
    del dic["name"]  # 没有返回值。print(dic)
    
    dic_pop1 = dic.popitem()  # 随机删除字典中的某个键值对,将删除的键值对以元祖的形式返回print(dic_pop1)  # ('name','jin')
    
    dic_clear = dic.clear()  # 清空字典print(dic,dic_clear)  # {} Non

    value1 = dic["name"]  # 没有会报错

    value2 = dic.get("djffdsafg","默认返回值") # 没有可以返回设定的返回值

    # dic = {"name":"jin","age":18,"sex":"male"}
    # for key in dic:
    #     print(key)
    # for item in dic.items():
    #     print(item)
    # for key,value in dic.items():
    #     print(key,value) 

    其他操作。

    # item = dic.items()
    # print(item,type(item))  # dict_items([('name', 'jin'), ('sex', 'male'), ('age', 18)]) <class 'dict_items'>
    # 这个类型就是dict_items类型,可迭代的
    
    # keys = dic.keys()
    # print(keys,type(keys))  # dict_keys(['sex', 'age', 'name']) <class 'dict_keys'>
    
    # values = dic.values()
    # print(values,type(values))  # dict_values(['male', 18, 'jin']) <class 'dict_values'> 同上

    字典的循环

    # dic = {"name":"jin","age":18,"sex":"male"}
    # for key in dic:
    #     print(key)   # name age sex
    # for item in dic.items():
    #     print(item)  #('name', 'jin')('age', 18)('sex', 'male')
    # for key,value in dic.items():
    #     print(key,value)  #name  jinage 18  sex male
    for i in dic.values():
      print(i) #jin 18 male

    三,其他(for,enumerate,range)。

    for循环:用户按照顺序循环可迭代对象的内容。

    复制代码
    msg = '老男孩python是全国范围内最好的python培训机构'
    for item in msg:
        print(item)
    
    li = ['alex','银角','女神','egon','太白']
    for i in li:
        print(i)
    
    dic = {'name':'太白','age':18,'sex':'man'}
    for k,v in dic.items():
        print(k,v)
    复制代码

    enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

    复制代码
    li = ['alex','银角','女神','egon','太白']
    for i in enumerate(li):
        print(i)                        #(0,“alex”)(1,“银角”)...
    for index,name in enumerate(li,1):
        print(index,name)               #1 alex   2 银角 ...
    for index, name in enumerate(li, 100):  # 起始位置默认是0,可更改
        print(index, name)    
    复制代码

    range:指定范围,生成指定数字。

    for i in range(1,10):  #左包右不包
        print(i)
    
    for i in range(1,10,2):  # 步长
        print(i)
    
    for i in range(10,1,-2): # 反向步长
        print(i)
  • 相关阅读:
    Java实现 蓝桥杯VIP 算法提高 阮小二买彩票
    Java实现 蓝桥杯VIP 算法提高 传染病控制
    Java实现 蓝桥杯VIP 算法提高 传染病控制
    Java实现 蓝桥杯VIP 算法提高 传染病控制
    Java实现 蓝桥杯VIP 算法提高 传染病控制
    Java实现 蓝桥杯VIP 算法提高 传染病控制
    Java实现 蓝桥杯VIP 算法提高 企业奖金发放
    Java实现 蓝桥杯VIP 算法提高 企业奖金发放
    让程序后台隐藏运行
    只要你喜欢,并且可以养家糊口,就是好的
  • 原文地址:https://www.cnblogs.com/caochao-/p/7716493.html
Copyright © 2020-2023  润新知