天天看點

python中shuffle函數的用法_python3中shuffle函數

1、 shuffle函數與其他函數不一樣的地方

shuffle函數沒有傳回值!shuffle函數沒有傳回值!shuffle函數沒有傳回值!僅僅是實作了對list元素進行随機排序的一種功能

請看下面的坑

1.1 誤認為shuffle函數會有一個傳回值的錯誤例子

import random

num1 = list(range(1, 39526)) # 産生1-39525的數

num2 = random.shuffle(num1)

num3 = num2[0:30000] # 取前30000個行号的元素

num4 = num2[30000:39524] # 取到後面9525個元素

執行結果:

Traceback (most recent call last):

File "E:/工作文檔/python.py/12.py", line 2, in

num2 = random.shuffle(num1)

NameError: name 'random' is not defined

其實作在這個num2中是null,什麼也沒有,因為shuffle沒有傳回值,是以自然會報這種類型的錯誤。

1.2 正确使用shuffle函數的例子

import random

num1 = list(range(1, 39526)) # 産生1-39525的數

random.shuffle(num1)

num3 = num1[0:30000] # 取前30000個行号的元素

num4 = num1[30000:39524] # 取到後面9525個元素

用python實作矩陣轉置,python3 中zip()函數

前幾天群裡有同學提出了一個問題:手頭現在有個清單,清單裡面兩個元素,比如[1, 2],之後不斷的添加新的清單,往原來相應位置添加.例如添加[3, 4]使原清單擴充為[[1, 3], [2, 4]],再 ...

Python3中map函數的問題

在Python2中map函數會傳回一個list清單,如代碼: >>> def f(x, y): return (x, y) >>> l1 = [ 0, 1, 2, ...

python3中reduce()函數的使用方法示例

reduce() 函數會對參數序列中元素進行累積,下面這篇文章主要給大家介紹了關于python中reduce()函數的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學 ...

python2和python3中filter函數

在python2和python3中filter是不同的,其中在python2中filter傳回的是一個list,可以直接使用 >>> a = [1,2,3,4,5,6,7] > ...

python3中map函數

map函數是Python裡面比較重要的函數 map函數後面必須接的是序列(元組/清單/字元串) 在python2中執行一些語句 >>> map(str,[1,2,3,4]) ['1' ...

Python3中的函數 大全

Python 函數 函數是組織好的,可重複使用的,用來實作單一,或相關聯功能的代碼段. 函數能提高應用的子產品性,和代碼的重複使用率.Python提供了許多内建函數,比如print().但也可以自己建立 ...

python3中numpy函數tile的用法

tile函數位于python子產品 numpy.lib.shape_base中,他的功能是重複某個數組.比如tile(A,n),功能是将數組A重複n次,構成一個新的數組,我們還是使用具體的例子來說明問題 ...

python3中numpy函數的argsort()

摘自:https://www.cnblogs.com/yushuo1990/p/5880041.html argsort函數argsort函數傳回的是數組值從小到大的索引值 Examples----- ...

python3中lambda函數

def make_repeater(n): return lambda s:s*n twice=make_repeater(2) print(twice('wwss')) print(twice(2) ...

随機推薦

完善SQL農曆轉換函數

-------------------------------------------------------------------- --  Author : 原著:          改編:ht ...

Ubuntu 16.04伺服器安裝及軟體配置

1.配置靜态位址 vim /etc/network/interfaces auto enp1s0 iface enp1s0 inet static address 192.168.1.131 netm ...

JAVA-面向對象-特性

1.封裝 1.定義方式 1修飾符class類名 2類名首字母大寫 2.類的成員 1屬性 成員變量 可以設定預設值 第一個單詞首字母小寫,後面首字母大寫 一般把屬性設定成private 提供屬性對應的g ...

Windows系統定時重開或者關機

at 6:00 /every:M,T,W,Th,F,S,Su cmd /c shutdown -r -t 60 (每天早上6點自動重新開機一次) at 0:00 /every:M,T,W,Th,F,S,S ...

excel 的一些操作

unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System ...

如何在MySQL中設定主從複制

mysql主從同步定義 主從同步機制 配置主從同步 配置主伺服器 配置從伺服器 使用主從同步來備份 使用mysqldump來備份 備份原始檔案 主從同步的小技巧 排錯 Slave_IO_Running ...

Python設計模式 - 基礎 - 封裝 & 繼承 & 多态

面向對象的核心是對象,世間萬物都可以看作對象,任何一個對象都可以通過一系列屬性和行為來描述,可以包含任意數量和類型的資料或操作.類是用來描述具有相同屬性和方法的所有對象的集合.類通常是抽象化的概念,而 ...

Spark SQL快速離線資料分析

拷貝hive-site.xml到spark的conf目錄下面 打開spark的conf目錄下的hive-site.xml檔案 加上這段配置(我這裡三個節點的spark都這樣配置) 把hive中的mys ...

websoclet簡單示例 my 改

首先,建立一個 maven war 項目: 首先,pom檔案:

HDU 6121 Build a tree(完全K叉樹)

http://acm.hdu.edu.cn/showproblem.php?pid=6121 題意:給你一顆完全K叉樹,求出每棵子樹的節點個數的異或和. 思路: 首先需要了解一些關于完全K叉樹或滿K叉 ...