欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在python3中使用shuffle函數(shù)要注意的地方

 更新時間:2020年02月28日 09:59:20   作者:雞啄米的時光機  
今天小編就為大家分享一篇在python3中使用shuffle函數(shù)要注意的地方,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1 shuffle函數(shù)與其他函數(shù)不一樣的地方

shuffle函數(shù)沒有返回值!shuffle函數(shù)沒有返回值!shuffle函數(shù)沒有返回值!僅僅是實現(xiàn)了對list元素進行隨機排序的一種功能

請看下面的坑

1.1 誤認為shuffle函數(shù)會有一個返回值的錯誤例子

num1 = list(range(1,39526)) #產生1-39525的數(shù)
num2 = random.shuffle(num1)
num3 = num2[0:30000] #取前30000個行號的元素
num4 = num2[30000:39524] #取到后面9525個元素

執(zhí)行結果:

 File "E:/pythonProj/test2/readDatasetCSVfile.py", line 122, in <module>
 num3 = num2[0:30000] #取前30000個行號的元素
 TypeError: 'NoneType' object is not subscriptable

從這個錯誤中我們也可以看出來,指明obiect沒有類型,其實現(xiàn)在這個num2中是null,什么也沒有,因為shuffle沒有返回值,所以自然會報這種類型的錯誤。

1.2 正確使用shuffle函數(shù)的例子

num1 = list(range(1,39526)) #產生1-39525的數(shù)
random.shuffle(num1) #注意shuffle沒有返回值,該函數(shù)完成一種功能,就是對list進行排序打亂
num3 = num1[0:30000] #取前30000個行號的元素
num4 = num1[30000:39524] #取到后面9525個元素

這個時候才順利運行通過!

補充拓展:對python中使用shuffle和permutation對列表進行隨機洗牌的區(qū)別

函數(shù):shuffle將列表的所有元素隨機排序,不生成新的數(shù)組返回

示例:

import random

list = [20, 16, 10, 5];
random.shuffle(list) # 參數(shù)只能是列表,元組、字典、字符串會報錯
print("隨機排序列表 : ", list)
random.shuffle(list)
print("隨機排序列表 : ", list)

執(zhí)行結果:

函數(shù):permutation 返回排列范圍的隨機列表或返回一個新的打亂順序的數(shù)組,并不改變原來的數(shù)組,

如果輸入是一個多維數(shù)組,則它只沿其第一個索引進行無序排列

示例:

import numpy as np
new_arr = np.random.permutation(10)
print(new_arr)
new_arr1 = np.random.permutation([1, 4, 9, 12, 15]) # 參數(shù)為列表
print(new_arr1)
arr = np.arange(9).reshape((3, 3))
new_arr2 = np.random.permutation(arr)
print(new_arr2)
new_arr3 = np.random.permutation([{"a": 1, "b": 2}, [{"e": 5}, {"c": 3}, {"d": 4}], [{"f": 6}, {"g": 8}]])# 子數(shù)組中的排列順序不變
print(new_arr3)
new_arr4 = np.random.permutation((1, 4, 9, 12, 15)) #可以傳元組參數(shù)
print(new_arr4)
import numpy as np
new_arr = np.random.permutation(10)
print(new_arr)
new_arr1 = np.random.permutation([1, 4, 9, 12, 15])
print(new_arr1)
arr = np.arange(9).reshape((3, 3))
new_arr2 = np.random.permutation(arr)
print(new_arr2)
new_arr3 = np.random.permutation([{"a": 1, "b": 2}, [{"e": 5}, {"c": 3}, {"d": 4}], [{"f": 6}, {"g": 8}]]) # 子數(shù)組中的排列順序不變
print(new_arr3)

執(zhí)行結果:

以上這篇在python3中使用shuffle函數(shù)要注意的地方就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 分享Python中四個不常見的小技巧

    分享Python中四個不常見的小技巧

    這篇文章主要介紹了分享Python中四個不常見的小技巧,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • 淺談Python中的作用域規(guī)則和閉包

    淺談Python中的作用域規(guī)則和閉包

    本文簡單講解了PYTHON的閉包,作用域的基本知識配合實例簡單明了,適合初學者
    2018-03-03
  • python列表逆序排列的4種方法

    python列表逆序排列的4種方法

    python中的列表是可以直接進行逆序排列的,本文主要介紹了python列表逆序排列的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2023-05-05
  • python編寫接口測試文檔(以豆瓣搜索為例)

    python編寫接口測試文檔(以豆瓣搜索為例)

    接口測試的方式有很多,比如可以用工具(jmeter,postman)之類,也可以自己寫代碼進行接口測試,這篇文章主要給大家介紹了關于python編寫接口測試文檔,本文以豆瓣搜索功能為例,需要的朋友可以參考下
    2021-07-07
  • 淺談Python在pycharm中的調試(debug)

    淺談Python在pycharm中的調試(debug)

    今天小編就為大家分享一篇淺談Python在pycharm中的調試(debug),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • 在 Python 中解析 ISO 8601 日期的詳細過程

    在 Python 中解析 ISO 8601 日期的詳細過程

    這篇文章主要介紹了在 Python 中解析 ISO 8601 日期,我們將討論典型的 ISO 8601 日期的結構,并向您展示如何將典型的 DateTime 對象解析為可以在所有地方使用的標準化 DateTime,需要的朋友可以參考下
    2023-08-08
  • odoo字段訪問控制的操作方法

    odoo字段訪問控制的操作方法

    在 Odoo 中,可以通過幾種方式實現(xiàn)字段的訪問控制?0c;包括通過模型安全規(guī)則、記錄規(guī)則和字段屬性來限制字段的訪問,這篇文章主要介紹了odoo字段訪問控制的相關操作,感興趣的朋友跟隨小編一起看看吧
    2024-03-03
  • 使用Python腳本將Bing的每日圖片作為桌面的教程

    使用Python腳本將Bing的每日圖片作為桌面的教程

    這篇文章主要介紹了使用Python腳本將Bing的每日圖片作為桌面的教程,示例基于Windows操作系統(tǒng)環(huán)境實現(xiàn),需要的朋友可以參考下
    2015-05-05
  • python爬蟲增加訪問量的方法

    python爬蟲增加訪問量的方法

    這篇文章主要介紹了python爬蟲增加訪問量的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • python實現(xiàn)簡單井字棋游戲

    python實現(xiàn)簡單井字棋游戲

    這篇文章主要為大家詳細介紹了python實現(xiàn)簡單井字棋游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03

最新評論