Python使用random.shuffle()隨機打亂字典排序

示例.1

import random
from random import shuffle
x = [[i] for i in range(10)]
shuffle(x)
print(x)

運行結果:

[[1], [2], [5], [0], [7], [9], [3], [8], [4], [6]]
[[6], [0], [7], [1], [3], [9], [5], [2], [4], [8]]

示例.2

dicts = {
    "productCode": "xyd",
    "account": "phone",
    "appType": "ios",
    "channelCode": "AppStore",
    "event": "FORGET_PWD"
}
 
def random_dic(dicts):
    dict_key_ls = list(dicts.keys())
    random.shuffle(dict_key_ls)
    new_dic = {}
    for key in dict_key_ls:
        new_dic[key] = dicts.get(key)
    return new_dic
 print(random_dic(dicts))

運行結果:

{'channelCode': 'AppStore', 'productCode': 'xyd', 'appType': 'ios', 'event': 'FORGET_PWD', 'account': 'phone'}
{'event': 'FORGET_PWD', 'account': 'phone', 'productCode': 'xyd', 'appType': 'ios', 'channelCode': 'AppStore'}

PS:random.shuffle()打亂列表元素順序

有時候,我們需要將列表中的元素隨機打亂順序,其實隻需要使用random庫提供的shuffle方法即可,不需要自己額外編寫函數。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import random
 
if __name__ == '__main__':
    a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    # 使用shuffle方法打亂a列表的順序,無返回值
    random.shuffle(a)
    print(a)

輸出:

[9, 5, 2, 8, 6, 7, 1, 10, 4, 3]
Process finished with exit code 0

註意,shuffle方法沒有返回值,不會生成新的列表,隻是將原列表的順序隨機打亂。

到此這篇關於Python使用random.shuffle()隨機打亂字典排序的文章就介紹到這瞭,更多相關Python random.shuffle()打亂字典排序內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: