基于python不同開(kāi)根號(hào)的速度對(duì)比分析
我就廢話不多說(shuō)了,大家還是直接看代碼吧~
import timeimport mathimport numpy as npdef timeit1(): s = time.time() for i in range(750000): z=i**.5 print ('Took %f seconds' % (time.time() - s))def timeit2(arg=math.sqrt): s = time.time() for i in range(750000): z=arg(i) print ('Took %f seconds' % (time.time() - s))def timeit3(arg=np.sqrt): s = time.time() for i in range(750000): z=arg(i) print ('Took %f seconds' % (time.time() - s))def timeit4(): s = time.time() for i in range(750000): z=math.pow(i,.5) print ('Took %f seconds' % (time.time() - s))timeit1()timeit2()timeit3()timeit4()
Took 0.152364 secondsTook 0.061580 secondsTook 1.016529 secondsTook 0.215403 seconds
補(bǔ)充:Python筆記-開(kāi)根號(hào)的幾種方式
前言使用Python中的自帶庫(kù)math、自帶函數(shù)pow和自帶庫(kù)cmath來(lái)對(duì)數(shù)字進(jìn)行開(kāi)根號(hào)運(yùn)算
方法一使用:math.sqrt(數(shù)字)

import mathn = int(input(’數(shù)字:’))x = math.sqrt(n)print(x)print(type(x)) #開(kāi)根號(hào)后的類(lèi)型為float方法二
使用:pow(數(shù)字,次方)

n = int(input(’數(shù)字:’))x = pow(n,0.5)print(x)print(type(x)) #開(kāi)根號(hào)后的類(lèi)型為float方法三
使用:cmath.sqrt(數(shù)字)
該方法多用于復(fù)數(shù)、負(fù)數(shù)的開(kāi)方運(yùn)算

import cmathn = int(input(’數(shù)字: ’))x = cmath.sqrt(n)print(x)print(type(x)) #類(lèi)型為complex
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章:
1. ASP基礎(chǔ)知識(shí)VBScript基本元素講解2. Python 利用Entrez庫(kù)篩選下載PubMed文獻(xiàn)摘要的示例3. Python 制作查詢商品歷史價(jià)格的小工具4. Linux刪除系統(tǒng)自帶版本Python過(guò)程詳解5. Python3 json模塊之編碼解碼方法講解6. python 使用事件對(duì)象asyncio.Event來(lái)同步協(xié)程的操作7. Python sublime安裝及配置過(guò)程詳解8. Python 合并拼接字符串的方法9. Python插件機(jī)制實(shí)現(xiàn)詳解10. ASP.NET MVC使用jQuery ui的progressbar實(shí)現(xiàn)進(jìn)度條

網(wǎng)公網(wǎng)安備