第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

為什么我import math之后,使用sqrt還需要寫math.sqrt,而abs可以直接用,加了math.abs反而報(bào)錯(cuò)

為什么我import math之后,使用sqrt還需要寫math.sqrt,而abs可以直接用,加了math.abs反而報(bào)錯(cuò)

W_Qing 2016-04-21 16:56:36
為什么我import?math之后,使用sqrt還需要寫math.sqrt,而abs可以直接用,加了math.abs反而報(bào)錯(cuò)?
查看完整描述

3 回答

已采納
?
清波

TA貢獻(xiàn)165條經(jīng)驗(yàn) 獲得超90個(gè)贊

首先,這個(gè)猿問是我在站內(nèi)消息中 主動(dòng)(不要臉)要過來的,為了方便后來者查閱(騙積分)。


開題,這其實(shí)是一個(gè)命名空間的問題。但是需要看我回答的人可能都是初學(xué)者,所以我就不講命名空間了,直接解答本題,盡量少扯別的(不可能。。)。


初學(xué)者很容易被 內(nèi)置函數(shù),模塊里的方法某些對象(特別是內(nèi)置的數(shù)據(jù)類型)的方法擾亂, 一個(gè)一個(gè)講:


內(nèi)置函數(shù):

##?abs()?就是Python?的內(nèi)置函數(shù)(built-in?functions),簡稱BIF?這樣的函數(shù)有多少呢??沒數(shù)過,?用法就是直接寫:
print?abs(-11)
11

##?說一個(gè)調(diào)出所有內(nèi)置函數(shù)的方法,可以打印出來慢慢看:
for?i?in?dir(__builtins__):
????print?i
##?小寫字母開頭的都是,?可以挨個(gè)?help(xx)?學(xué)習(xí)了。?當(dāng)然有一些我們熟悉的,比如說?len()?zip()?range()
##?題主之所以混淆,是因?yàn)檫@個(gè)絕對值,怎么看都是BIF?從Math?家領(lǐng)養(yǎng)過來的。。。


模塊里的方法:

##?就用math?模塊吧,?sqrt就是?math?模塊里面的一個(gè)方法(函數(shù)),?引用不同,調(diào)用方法不同:

##?(1)?引用整個(gè)模塊,把模塊作為一個(gè)家庭,引入整個(gè)模塊的意思就好比,我們聚會,?math是一個(gè)家庭,
##?我們請來他們?nèi)遥ǜ杏X想罵人),這時(shí)候我們稱呼math的家人(方法,如sqrt)的時(shí)候,?就會說:“math?家的sqrt”
##?對應(yīng)代碼如下:
import?math

print?math.sqrt(4)
2.0


##?(2)?從模塊中單獨(dú)引入該方法(函數(shù)),?這個(gè)就好比?我們從?math家?直接請來了?sqrt?一個(gè)人,如此,稱呼他的時(shí)候
##?就無需帶著家族了,直接喊他的名字就好,代碼如下:
from?math?import?sqrt

print?sqrt(1)
1.0


##?(3)?引用模塊中的所有方法(函數(shù)),這個(gè)跟第一點(diǎn)引入整個(gè)模塊不同,這次我們雖然也請了math全家,但是卻是
##?每一個(gè)人都下了請柬,同樣稱呼的時(shí)候也無需帶著家族名號了,代碼如下:
from?math?import?*

print?sqrt(1)
1.0

print?log(8,2)??##?math?中滿眼的三角函數(shù),恕我無能,我認(rèn)為最簡單的就是這個(gè)了。。
3.0


##?(4)?引入模塊中的某方法并給予別名,?這就好比我們開了個(gè)假面舞會,或者cosplay大會,從math家請了一位,并且
##?告訴他,你今晚扮演?蝙蝠俠,代碼如下:
from?math?import?sqrt?as?kaifang

print?kaifang(16)?##?以我近30年的拼音功力?起的名字?>_<?。
4.0


##?(5)?引入整個(gè)模塊?并賦予這個(gè)模塊別名,這個(gè)跟上面那個(gè)差不多了,這次是給他們?nèi)遥ㄎ拿鳎└拿?。代碼如下:
import?math?as?shuxue

print?shuxue.sqrt(16)????##?作為英語渣,看到這句,我也想殺了我自己。。。
4.0



##?小貼士,如果想知道某些模塊含有那些方法,?首先?import?xxx?然后?help(xxx)?就好了。

##?總結(jié),我擦?扯了這么多,算了不總結(jié)了。。。


內(nèi)置數(shù)據(jù)類型的方法:

##?以字符串為例,?首先help(str)?看方法,然后我下面隨便用幾個(gè)。

s='abcdefc'

print?s.upper()?##?大寫所有
'ABCDEF'

print?s.index('c')?##?返回?參數(shù)?所處的第一個(gè)index,?有其他參數(shù)可以調(diào)整
2


##?查看某對象的方法:?help(對象名),?內(nèi)置數(shù)據(jù)類型如?help(list),?tuple,?set?,?dict,?bool,?int,?float?等等
##?總結(jié),某些對象或者?內(nèi)置數(shù)據(jù)類型(也是對象)的方法調(diào)用?就是??Object.method()??(對象.方法名())


我 —————— 真—————— 能—————— 扯—————— ?。?!———————— ?。?!

查看完整回答
6 反對 回復(fù) 2016-04-21
  • 清波
    清波
    不好意思, mooc 抽風(fēng)了, 里面有個(gè)函數(shù)寫的不嚴(yán)謹(jǐn) , log2(8) , log2 在Python2.x 中不存在, 需要改成log(8,2)
  • W_Qing
    W_Qing
    非常感謝!寫的清晰易懂~ 內(nèi)置函數(shù)、模塊中調(diào)用函數(shù)的方法和某些對象的調(diào)用大概知道區(qū)分開了。
  • 龍_大人
    龍_大人
    可以修改噠~在內(nèi)容右下角有修改按鈕~
點(diǎn)擊展開后面5
?
慕奶姨

TA貢獻(xiàn)55條經(jīng)驗(yàn) 獲得超70個(gè)贊

檢測函數(shù)

查看完整回答
反對 回復(fù) 2016-04-22
?
Python工程師

TA貢獻(xiàn)32條經(jīng)驗(yàn) 獲得超16個(gè)贊

可能使用的函數(shù)有問題吧

查看完整回答
反對 回復(fù) 2016-04-22
  • 3 回答
  • 1 關(guān)注
  • 2706 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號