日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python中哪些是无序_关于无序集合:无序集合 – 在python中设置

發(fā)布時(shí)間:2023/12/14 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中哪些是无序_关于无序集合:无序集合 – 在python中设置 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本問(wèn)題已經(jīng)有最佳答案,請(qǐng)猛點(diǎn)這里訪問(wèn)。

很抱歉,如果這是一個(gè)基本問(wèn)題,但是我想了解set類(lèi)型在python中是如何工作的。

來(lái)自文檔:

A set object is an unordered collection of distinct hashable objects.

Being an unordered collection, sets do not record element position or order of insertion.

號(hào)

但是,如果它們沒(méi)有順序,為什么我在這個(gè)測(cè)試中總是得到相同的順序呢?我在等一些隨機(jī)的訂單。

users_ids = set([1, 1, 2, 3])

>>> print users_ids

set([1, 2, 3])

因?yàn)槟褂玫氖钦麛?shù),所以它們將按順序散列。

@這并不總是。它還取決于整數(shù)的大小

@SMAC89這是一個(gè)公平的觀點(diǎn)。

隨機(jī)順序不是無(wú)序的。無(wú)序意味著沒(méi)有定義的數(shù)據(jù)排序方式,即插入順序或數(shù)據(jù)與數(shù)據(jù)排列方式?jīng)]有任何關(guān)聯(lián)。

數(shù)據(jù)總是以可預(yù)測(cè)的順序排列的原因,因?yàn)榘l(fā)生這種情況時(shí),特定的實(shí)現(xiàn)選擇始終以插入順序指示數(shù)據(jù)順序的方式排列元素。但是,不能保證會(huì)發(fā)生這種情況,我們確實(shí)在python 3.x字典實(shí)現(xiàn)中看到了這種偏差。

注意,即使我們看到數(shù)據(jù)已排序,

>>> {1,2,3,4,5}

set([1, 2, 3, 4, 5])

我們?nèi)匀环Q(chēng)之為無(wú)序,除非文件嚴(yán)格規(guī)定并保證其訂單,否則可能會(huì)有驚喜等待您。我見(jiàn)過(guò)依賴(lài)于集合和字典在插入模式中保持有序的事實(shí)的實(shí)現(xiàn)。當(dāng)這些實(shí)現(xiàn)被移植到python 3.x時(shí),會(huì)產(chǎn)生嚴(yán)重的后果。

γ

What’s New In Python 3.3

Security improvements:

Hash randomization is switched on by default.

號(hào)

您將共享一個(gè)描述Python3.x字典實(shí)現(xiàn)的鏈接,以及它與Python2.x的區(qū)別嗎?

讓我看看我是否理解。在python 2.7中,集合是無(wú)序的,但特定的實(shí)現(xiàn)保持插入順序?!在這種情況下,它們可能是訂購(gòu)的,但在未來(lái)的版本中不能保證。我的理解正確嗎?

@但是,3.3以后的差異是由于散列的隨機(jī)性-請(qǐng)參閱stackoverflow.com/a/14959001/3001761

@用戶(hù)2990084:說(shuō)它保持插入順序是錯(cuò)誤的,但我的意思是,每次以特定的順序插入相同的數(shù)據(jù)時(shí),字典都會(huì)以定義的方式維護(hù)。

@用戶(hù)2990084:我已經(jīng)用鏈接更新了答案。

@用戶(hù)2990084看到保留順序的原因是您使用的是順序整數(shù)。python 2.x散列的方式,您的示例恰好是"有序的"。

總結(jié)

以上是生活随笔為你收集整理的python中哪些是无序_关于无序集合:无序集合 – 在python中设置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。