python模塊和包,常用模塊math、random、random.sample(li,n)#不放回抽取n個隨機樣本

2021-03-02 數據運營與數據分析
一、模塊

模塊是一個包含所有你定義的函數和變量的文件,其後綴名是.py。模塊可以被別的程序引入,以使用該模塊中的函數等功能。這也是使用 python 標準庫的方法。從物理的角度來說,一個模塊就是一個.py文件,從邏輯的角度來說,就是模塊的命名空間。

模塊的好處:(1)在同一個模塊.py文件中一個名字不能同時出現,為了解決名字衝突的問題,所以建立不同的文件。(2)有利於項目按照功能分塊開展。(3)可以共享使用模塊。

二、模塊的導入

1.import  模塊名1 [as 別名1],模塊名2 [as 別名2],...    #當import導入模塊之後,被導入的代碼會從頭到尾被執行一次

模塊名.變量名/函數/...       #使用導入後的內容

import random #導入random模塊
random.randint(1,100) #使用模塊中的randint()生成1-100的隨機數

2.from 模塊 import 名字1 [as 別名1],名字2[as 別名2],...     #導入模塊中指定名字的部分,不全部導入模塊

#使用直接使用import後面的名字即可

from random import randint
randint(1,100)

3.別名可以不使用,但名字較長時我們使用別名時,原來的名字就不能用了

from random import randint as r

r(1,100)

三、模塊的搜索路徑

目的:為了添加新模塊起名是不要與原有模塊名字相同導致衝突。

模塊的搜索路徑:當程序有import ... 的內容的時候,進行對模塊的加載

加載順序:內建解釋器中先加載 buildins.py  ----腳本執行所在的模塊中加載----python的path環境變量路徑中加載----再到python的安裝路徑下加載。

四、__name__屬性

一個模塊被另一個程序第一次引入時,其主程序將運行。如果我們想在模塊被引入時,模塊中的某一程序塊不執行,我們可以用__name__屬性來使該程序塊僅在該模塊自身運行時執行。

#!/usr/bin/python3
# Filename: using_name.py

if __name__ == '__main__':
print('程序自身在運行')
else:
print('我來自另一模塊')

說明: 每個模塊都有一個__name__屬性,當其值是'__main__'時,表明該模塊自身在運行,否則是被引入。

說明:__name__ 與 __main__ 底下是雙下劃線, _ _ 是這樣去掉中間的那個空格。

五、包

在python中的包,就相當於是存放.py文件的文件夾一樣。

導入模塊的時候要指定包

其中,在包中_init_.py   代表當前的包是python的開發包,不是普通的文件夾。當有其他的模塊導入該包下的文件時,會自動的執行_init_.py的內容初始化包。

六、常用模塊

#1.math模塊
import math
print(math.sqrt(4)) #開平方根
print(math.e)
print(math.pi)

#2.random 隨機數模塊
import random
print(random.random()) #[0,1)之間的隨機數
print(random.randint(0,10)) #[0,10]之間的隨機整數
random.seed(1) #種子 讓後面的隨機方法,每次運行時都產生相同的值
print(random.randrange(1,10,3)) #在[1,10)之間產生1,4,7的隨機數

#3.sample(li,n) 不放回抽取樣本,在random模塊下,li代表樣本源,n表示抽取幾個
import random
li = [1,-1,5,6,9,11,10]

print(random.sample(li,2)) #從li中不放回地隨機抽取2個數

相關推薦:python數據分析

相關焦點

  • 第31天:Python random 模塊
    在本節中繼續介紹 Python 提供的常用模塊 random 模塊,它的主要功能是用來生成偽隨機數的。random 模塊Python 提供的 random 模塊實現了各種分布式的偽隨機數生成器。該模塊主要包含以下幾種常用的函數。random()函數random()函數可以隨機生成一個[0,1)的浮點數。
  • Python 模塊學習:random 隨機數生成
    模塊用於生成隨機數。下面介紹一下random模塊中最常用的幾個函數。random.samplerandom.sample的函數原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。sample函數不會修改原有序列。
  • Python random模塊詳解,指定分布類型的隨機樣本生成
    random模塊的隨機數生成函數有以下幾種:choicerandintrandom_integersrandomrandom_sample其實細細分析下,這些函數很多功能被替代了,所以常用的也就那麼幾個。choice#在np.arange(5)中均勻抽取10個整數,返回一維數組#在np.arange(5)中均勻抽取10個整數,返回二維數組
  • python隨機模塊22個函數詳解(上)
    作者:小伍哥來源: AI入門學習今天給大家介紹下python中的隨機模塊,隨機數可以用於數學,遊戲,安全等領域中,還經常被嵌入到算法中,用以提高算法效率,並提高程序的安全性。平時數據分析各種分布的數據構造也會用到。
  • Python3中常用模塊-random模塊
    random是Python中與隨機數相關的模塊,其本質就是一個偽隨機數生成器,我們可以利用random模塊基礎生成各種不同的隨機數,以及一些基於隨機數的操作。
  • Python random模塊學習筆記
    /python-random.html(點擊尾部閱讀原文前往)random 模塊是Python自帶的模塊,除了生成最簡單的隨機數以外,還有很多功能。>返回a,b之間的隨機浮點數,範圍[a,b]或[a,b),取決於四捨五入,a不一定要比b小。
  • Python隨機模塊22個函數詳解
    描述:從population樣本或集合中隨機抽取K個不重複的元素形成新的序列。常用於不重複的隨機抽樣。返回的是一個新的序列,不會破壞原有序列。要從一個整數區間隨機抽取一定數量的整數,請使用sample(range(1000000), k=60)類似的方法,這非常有效和節省空間。如果k大於population的長度,則彈出ValueError異常。
  • 【Python入門】Python隨機模塊22個函數詳解
    描述:從population樣本或集合中隨機抽取K個不重複的元素形成新的序列。常用於不重複的隨機抽樣。返回的是一個新的序列,不會破壞原有序列。要從一個整數區間隨機抽取一定數量的整數,請使用sample(range(1000000), k=60)類似的方法,這非常有效和節省空間。如果k大於population的長度,則彈出ValueError異常。
  • 「總體」和「樣本」 Population and Sample
    Frequently, we will assume that random samples are used in the analysis. The word 「random」 is often applied to any method or sample selection that lacks systematic direction.
  • R包randomForest 隨機森林
    其對多元線性不敏感,對缺失數據和非平衡的數據比較穩健,可以很好的預測幾千個解釋變量的作用。可以通過randomForest進行計算。randomForest的manual 地址https://cran.r-project.org/web/packages/randomForest/randomForest.pdf 本文來自與與數據挖掘與R語言實戰和網際網路資料搬運和整理。
  • 機器學習之隨機森林算法(Random Forest)及python代碼實現
    每棵樹的按照如下規則生成:1)如果訓練集大小為N,對於每棵樹而言,隨機且有放回地從訓練集中的抽取N個訓練樣本(這種採樣方式稱為bootstrap sample方法),作為該樹的訓練集;從這裡我們可以知道:每棵樹的訓練集都是不同的,而且裡面包含重複的訓練樣本(理解這點很重要)。為什麼要隨機抽樣訓練集?
  • 隨機森林(Random Forest)原理小結
    bagging基學習器的多樣性通過「樣本擾動」達到,而這是通過」自主採樣法「(bootstrap sampling)實現。bootstrap sampling:給定包含m個樣本的數據集D,每次隨機、有放回的挑選一個樣本,執行m次,最後得到一個包含m個樣本的數據集D'。
  • python教程之七模塊與函數庫
    模塊上一章,我們講解了函數的概念及其使用方法和案例等,我們定義了函數後,可以多次調用該函數來使用,但是如果我們從python解釋器退出後,這些函數信息就都無效了,為此,我們本章提供了模塊這個概念。我們把這些定義存放在文件裡,保存在磁碟裡,這個文件被稱為模塊。模塊是包含所有我們定義的函數和變量的文件,可以被別的程序引入,用來使用模塊裡面的信息。
  • R包randomForest的隨機森林分類模型以及對重要變量的選擇
    R包randomForest的隨機森林分類模型以及對重要變量的選擇隨機森林(random forest)是一種組成式的有監督學習方法,可視為決策樹的擴展。隨機森林通過對對象和變量進行抽樣構建預測模型,即生成多個決策樹,並依次對對象進行分類。最後將各決策樹的分類結果匯總,所有預測類別中的眾數類別即為隨機森林所預測的該對象的類別,分類準確率提升。
  • 玩轉Python 中的隨機數
    隨機生成 0 到 1 之間的浮點數random.random() 方法會返回 [0.0, 1.0) 之間的浮點數,注意,這是一個左閉右開的區間,隨機數可能會是 0 但不可能為 1 。如果你不想修改原來的列表,你可以使用 copy 模塊先拷貝一份原來的列表從列表中隨機取出 n 個元素使用 random.sample(items, n) 方法可以從序列 items 中隨機取出 n 個元素
  • JavaScript用Math.random()生成隨機數
    基本概念顧名思義,Math.random()方法就是用於生成隨機數的,因為單詞random的意思正是「隨機的」。該方法生成的結果是 [0, 1) 範圍內的浮點數,注意這是一個左閉右開的區間,即該區間包含0而不包含1。官方文檔指出Math.random()方法生成的隨機數在該區間上要大致符合均勻分布。
  • 機器學習十大經典算法之隨機森林
    隨機森林簡介隨機森林是機器學習一種常用的方法。它是以決策樹為基礎,用隨機的方式排列建立的,森林裡每個決策樹之間都是沒有關聯的。 在得到森林之後,當有一個新的輸入樣本進入的時候,就讓森林中的每一棵決策樹分別進行一下判斷,看看這個樣本應該屬於哪一類(對於分類算法),然後看看哪一類被選擇最多,就預測這個樣本為那一類。隨機森林可以用來進行無監督學習聚類和異常點檢測。
  • Math.random() 二三事
    ;var randomIndex = Math.floor( objects.length * Math.random() ); var object = objects[ randomIndex ];隨機數的分布規律前面代碼中 Math.random() 和 randomIndex 的取值,在「概率分布」理論中屬於「連續型分布
  • python實現隨機森林
    Bagging(套袋法)bagging的算法過程如下:從原始樣本集中使用Bootstraping方法(自助法,是一種有放回的抽樣方法)隨機抽取n個訓練樣本,共進行k輪抽取,得到k個訓練集。(所有模型的重要性相同)Boosting(提升法)boosting的算法過程如下:Bagging,Boosting的主要區別樣本選擇上:Bagging採用的是Bootstrap隨機有放回抽樣;而Boosting每一輪的訓練集是不變的,改變的只是每一個樣本的權重。
  • Python-random庫的基本應用
    偽隨機數:計算機中通過採用梅森旋轉算法生成的(偽)隨機序列元素,python中用於生成偽隨機數的函數庫是random概述這裡放幾個random庫常用函數:>random()randrange()randint()choice()uniform()sample()