精华内容
下载资源
问答
  • 2020-11-30 09:00:22

    字典都是按照键来便利的,字典前面是键后面的是值,遍历字典都是遍历他的键,便利不出来他的值,但是可以通过枚举来把他的值和下标分开,向字典里添加数据时可以控制他的顺序,通过下标索引,或是通过他的位置,

    通过enumerate遍历出值

    a ={1:'张',2:'李'}

    for index,value in enumerate(a):

    print(value)

    print('============================')

    通过enumerate遍历出下标

    a ={1:'张',2:'李'}

    for index,value in enumerate(a):

    print(index)

    print('============================')

    a = {1: '张', 2: '李'}

    普通遍历,遍历字典

    for index in a:

    print(index)

    ========结果========

    1

    2

    ============================

    0

    1

    ============================

    1

    2

    更多相关内容
  • python 字典到底是有序还是无序?

    千次阅读 2020-06-30 18:18:12
  • python字典数据类型是有序还是无序,我们判断数据类型是有序还是无序的依据是什么?

    python版本3.5之前的存储是无序的,3.5版本之后数据存储是有序的

    • python2.7演示
      img
      数据存储是无序的,输出的顺序是无序的
    • python3.6演示
      img
      数据存储是有序的,输出和输入顺序保持一致

    但是从取值方式看,字典依然是一个无序的数据类型

    • 取值还是用key来获取,不是下标

    总结

    虽然字典的数据存储在版本变动上,为了方便,从无序变成了有序,但字典本身其实还是一个无序的,字典依然不可以使用下标来取值,无法使用index方法,而是通过key来进行取值的。

    展开全文
  • 无序字典有序字典

    千次阅读 2020-11-30 09:00:22
    因为在项目中用到了 所以看了一下python3.5 字典无序python3.6 只有显示出来的是有序的 但实际上 也是无序python3.7之后 字典就是有序有序字典应该先 导入from collections import OrderedDictOrderedDict...

    因为在项目中用到了 所以看了一下

    python3.5 字典是无序的

    python3.6 只有显示出来的是有序的 但实际上 也是无序的

    python3.7之后 字典就是有序的

    有序字典应该先 导入

    from collections import OrderedDict

    OrderedDict就是一个类 需要需用 先进行 实例化

    od = OrderedDict()

    然后和字典的用法是一样的

    copycode.gif

    from collections import OrderedDict

    od = OrderedDict()

    od['k1'] = 'v1'

    od['k2'] = 'v2'

    od['k3'] = 'v3'

    for k, v in od.items():

    print('k={},v={}'.format(k, v))

    copycode.gif

    显示的结果就是

    k=k1,v=v1

    k=k2,v=v2

    k=k3,v=v3

    这就是有序字典了 有序字典就是按照插入数据的顺序输出的

    我的应用场景 是对一级菜单排序

    copycode.gif

    from collections import OrderedDict

    @register.inclusion_tag('menu.html')

    def menu(request):

    od = OrderedDict()

    menu_dict = request.session.get(settings.MENU_SESSION_KEY)

    # url = request.path_info

    # for i in menu_list:

    # if re.match(r'{}$'.format(i['url']), url):

    # i['class'] = 'active'

    # break

    # print(menu_dict.values())

    menu_list = sorted(menu_dict, key=lambda x: menu_dict[x]['weight'], reverse=True)

    # print(menu_list)

    for key in menu_list:

    od[key] = menu_dict[key]

    return {'menu_list': od.values()}

    展开全文
  • Python 字典遍历顺序是有序还是无序的?

    万次阅读 多人点赞 2019-04-30 12:36:52
    今天看了《Python 编程从入门到实践》的字典章节,阅读到第88页,第88页内容引用如下: user_0 = { 'username':'efermi', 'first':'enrico', 'last':'fermi' } for key,value in user_0.items(): print("\...
  • 背景之前记得python字典无序的,开发过程中发现实际插入是有序的,很神奇,这是为什么了?疑问1. 3.7及以后的特性是插入有序,之前的确实无序,难道新版用了OrderDict?2. 为什么之前是无序的呢?3. 3.7后是如何...
  • Python 默认的字典无序的,如果我们需要让他变成有序,很简单,使用有序字典即可,会按照添加顺序自动排序,先添加的在前面,后添加的在后面。Python 中有一个 OrderedDict,刚好就是实现这个功能的,下面进行介绍...
  • python3.7的字典有序的旧结构python3.7之前的字典结构,经典粗暴的hash表实现方式,这样的话每次hash表的扩容和缩容都可能导致hash值的改变。hash表容量更新的前后,它的键之间的相对顺序是会变化的,因此字典的...
  • 刚学python的时候认为字典无序,通过多次插入,如di = {}, 多次di['testkey']='testvalue' 这样测试来证明无序的。后来接触到了字典查找效率这个东西,查了一下,原来字典python内部是通过哈希表的顺序来排的,...
  • 如 male和female,就是无序的,应该转化成(1,0)和(0,1),但衣服大小,M,L,XL,则应转化为1,2,3若将无序属性连续化,则会不恰当的引入序关系,对后续处理如距离计算等造成误导类别变量转化的Python实现:1、有序的...
  • python有序字典

    千次阅读 2022-02-20 23:01:10
    为什么要出现有序字典这个概念呢,因为字典{}的输出是无序字典无序是指数据存进字典的顺序跟取出字典的顺序不一致。 collections模块中的OrderedDict是用双向链表写出来的。 代码 而我因为字典{}既然无序,且...
  • python字典无序

    千次阅读 2018-10-21 11:29:32
    详情请参考:...     关于 Python 字典的 values() 方法返回值的顺序? dict_mark = {'Wang': 'C', 'Li': 'B', 'Ma': 'A'} s = '' for c in dict_mark.values(): s += c print(s) 关于这个字典...
  • 创建mydict的有序版本让我们从你的字典开始:>>> mydict = {... 'b': {'play': 2, 'scratch': 5, 'face': 8},... 'c': {'do': 4, 'chew': 6},... 'a': {'wash': 1, 'drink': 10, 'give': 20, 'eat': 30}... }普通...
  • 1、如何让字典保持有序 实际案例: 某编程竞赛系统,对参赛选手编程解题进行计时,选手完成题目后,把该选手解题用时记录到字典中,以便赛后按选手名查询成绩。(答题用时越短,成绩越优秀。) 如:LiLei第2名用时...
  • python中的有序无序类别变量

    千次阅读 2020-12-04 21:39:42
    如 male和female,就是无序的,应该转化成(1,0)和(0,1),但衣服大小,M,L,XL,则应转化为1,2,3若将无序属性连续化,则会不恰当的引入序关系,对后续处理如距离计算等造成误导类别变量转化的Python实现:1、有序的...
  • 在过去几周里,我曾多次听到人们讨论Python列表和字典之间的区别,其中提到的第一个区别是列表是有序的,而字典不是。不过呢,现在已经不再是这样了。这里引用一下涉及上述话题的文档:版本3.7的变化:确保字典顺序是...
  • Python集合无序字典有序(3.7+)
  • Python中的字典到底是有序的吗

    万次阅读 多人点赞 2021-09-27 09:25:27
    之前写了文章介绍python中的列表和字典,在文章中描述到了python中的列表是有序的,字典无序的,后来有粉丝在群里提醒我,说python3.6的版本之后,字典有序的,因此,我找了一个低版本的python来验证一下效果: ...
  • 今天在处理一张灰度图的直方图分布是需要统计灰度值的大小以及频数,用到了字典数据类型,在我的印象中python字典数据类型是无序的,但是代码中却用到了字典类型用来记录{灰度值:频数}的键值对,我微微思考一下这...
  • 字典无序的,但是collections的OrderedDict类为我们提供了一个有序字典结构,名副其实的Ordered+Dict,下面通过两个例子来简单了解下Python的collections模块中的OrderedDict有序字典:
  • python 有序字典使用

    2020-10-19 22:07:13
    因为字典本身是哈希表,所以他是无序的。而有时特定场景会需要有序字典有序字典和通常字典类似,只是它可以记录元素插入其中的顺序,而一般字典是会以任意的顺序迭代的。 二、使用步骤 1.引入库 import ...
  • Python 无序容器(元组和字典

    千次阅读 2020-12-08 14:47:29
    Python 元组和字典定义元组定义: t = {} 或者 t = set()字典定义:d = {} 或者 d = dict()定义形式相同但是存储元素不同,如:元组 t = {1, 2, 3},字典 d = {1: 1, 2: 2, 3: 3}描述元组和字典无序容器。...
  • python 序列的有序无序可变不可变的理解 不可变数据类型: 是指变量的值发生改变时,其对应的内存地址也发生改变。 可变数据类型:是指变量的值发生改变时,其对应的内存地址不发生改变 1. 列表(有序可变): 循环...
  • python字典有序的吗

    千次阅读 2021-02-03 21:54:56
    字典无序是指数据存进字典的顺序跟取出字典的顺序不一致Python2的字典无序的>>> d = {'a':-1,'b':-1,'c':-1}>>> d{'a': -1, 'c': -1, 'b': -1}>>> for k,v in d.items():... print k...
  • key : 有序字典只有定义完按插入顺序进行排序才行 无序字典,普通字典 ,遍历一个普通字典,返回的数据和定义字典时的字段顺序是不一致的。 print("Regular dictionary") d = {} d['a'] = 'a' d['b'] = 'b' d['c'] ...
  • python字典和集合

    2021-02-03 10:52:09
    python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、只含不可变类型元素的元组(1,2,3,’abc’)、...
  • python 实现有序字典

    2020-11-25 20:10:40
    python 实现有序字典Python默认的字典,是不按顺序存储、输出我们添加在字典中的内容的,即是无序字典python 使用OrderedDict函数实现有序字典。示例:d = dict([("a",1),("b",2),("c",3),("d",5),("e",6)])...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,418
精华内容 8,167
关键字:

python字典有序还是无序