Python 學習筆記: 數學模組math 與cmath 測試 - 小狐狸事務所

文章推薦指數: 80 %
投票人數:10人

在學習Python 第三方套件Numpy 之前我想先對Pyhon 內建的math 模組進行較完整的測試, 因為對於非向量運算來說, 使用math 模組提供的函數就綽綽有餘了, ... 2019年10月21日星期一 Python學習筆記:數學模組math與cmath測試 在學習Python第三方套件Numpy之前我想先對Pyhon內建的math模組進行較完整的測試,因為對於非向量運算來說,使用math模組提供的函數就綽綽有餘了,而且運算效能比較好.不過math模組只能處理實數運算,Python提供另一個內建模組cmath專門用來處理複數運算. 本系列測試文章索引參考: # Python學習筆記索引 math與cmath模組的說明文件參考: # https://docs.python.org/3/library/math.html # https://docs.python.org/3/library/cmath.html 1.匯入math模組:  使用math模組須先匯入: importmath 這樣呼叫math的方法時必須前綴模組名稱math,例如math.sin(1).也可以取一個較短的別名(alias): importmathasm  這樣就可以用別名m.sin()來呼叫函數了. 用dir()檢視math模組的成員(屬性與方法): >>>importmath      #math模組只能處理實數 >>>dir(math)    ['__doc__','__loader__','__name__','__package__','__spec__','acos','acosh','asin','asinh','atan','atan2','atanh','ceil','copysign','cos','cosh','degrees','e','erf','erfc','exp','expm1','fabs','factorial','floor','fmod','frexp','fsum','gamma','gcd','hypot','inf','isclose','isfinite','isinf','isnan','ldexp','lgamma','log','log10','log1p','log2','modf','nan','pi','pow','radians','remainder','sin','sinh','sqrt','tan','tanh','tau','trunc'] 用dir()檢視cmath模組的成員(屬性與方法): >>>importcmath     #cmath模組可處理複數 >>>dir(cmath)  ['__doc__','__loader__','__name__','__package__','__spec__','acos','acosh','asin','asinh','atan','atanh','cos','cosh','e','exp','inf','infj','isclose','isfinite','isinf','isnan','log','log10','nan','nanj','phase','pi','polar','rect','sin','sinh','sqrt','tan','tanh','tau'] 可見大部分函數均與math模組一樣,常數e,pi,tau,nan,inf都是相同的實數,但cmath多了虛數的infj與nanj. 2.math模組中的數學常數:  math模組中定義了如下五個常數(屬性):  math常數 說明  e 自然指數=2.718281828459045  pi 圓周率=3.141592653589793  tau 圓周率的兩倍=2*pi  nan 非數值=float('nan')    inf 正無限大之浮點數=float('inf') 其中nan與inf也可以用float('nan')與float('inf')產生,並有對應的方法isnan()與isinf()用來檢測傳入參數是否為nan與inf. 例如: >>>importmath   >>>math.e                  #自然指數 2.718281828459045 >>>math.pi                 #圓周率 3.141592653589793 >>>math.nan               #非數值 nan >>>type(math.nan)          #nan為float型態 >>>float('NAN')  nan >>>math.isnan(float('nan'))   #檢查是否為nan True >>>math.inf  inf >>>type(math.inf)           #inf為float型態 >>>float('INF')   inf >>>math.isinf(float('inf'))     #檢查是否為inf True >>>math.isnan(123)         #檢查是否為nan False >>>math.isinf(123)          #檢查是否為inf False >>>math.isnan('abc')        #不可傳入字串 Traceback(mostrecentcalllast):   File"",line1,in TypeError:mustberealnumber,notstr 3.math模組的函數: math模組提供了三角,指數,對數,反雙曲等超越函數如下表:  math方法 說明  sqrt(x) 傳回x的平方根  pow(x,y) 傳回x的y次方  exp(x) 傳回x的自然指數  expm1(x) 傳回x的自然指數-1(在x接近0時仍有精確值)  log(x[,b]) 傳回x以b為基底的對數(預設b=e自然對數)  log10(x) 傳回x的常用對數(以10為底數)  degrees(x) 傳回弧度x的角度(degree)  radians(x) 傳回角度x的弧度(radian)  dist(p,q) 傳回兩個座標點p,q的歐幾里得距離(畢式定理斜邊)  hypot(coor) 傳回座標序列coor的歐幾里得距離  sin(x) 傳回x的正弦值  cos(x) 傳回x的餘弦值  tan(x) 傳回x的正切值  asin(x) 傳回x的反正弦值(sin的反函數)  acos(x) 傳回x的反餘弦值(cos的反函數)  atan(x) 傳回x的反正切值(tan的反函數)  atan2(y,x) 傳回y/x的反正切值(tan的反函數)=atan(y/x)  sinh(x) 傳回x的雙曲正弦值  cosh(x) 傳回x的雙曲餘弦值  tanh(x) 傳回x的雙曲正切值  asinh(x) 傳回x的反雙曲正弦值=log(x+sqrt(x**2+1))  acosh(x) 傳回x的反雙曲餘弦值=log(x+sqrt(x**2-1))  atanh(x) 傳回x的反雙曲正切值=1/2*log((1+x)/(1-x))  fabs(x) 傳回x的絕對值(或稱模數,modulus)  floor(x) 傳回浮點數 x的向下取整數(即小於x之最大整數)  ceil(x) 傳回浮點數 x的向上取整數(即大於x之最小整數)  trunc(x) 傳回浮點數x的整數部分 (捨去小數)  modf(x) 傳回浮點數x的(小數,整數)元組  factorial(x) 傳回x階乘(x!,x=整數)  gcd(x,y) 傳回整數x,y之最大公因數  comb(n,k) 傳回n取k的組合數(不依序不重複)  perm(n,k) 傳回n取k的組合數(依序不重複)  modf(x,y) 傳回x/y之精確餘數(浮點數float)  fsum(iter) 傳回可迭代數值iter之精確總和  isclose(x,y) 若a,b值很接近傳回True(預設差小於1e-9)  isfinite(x) 若x不是nan或inf傳回True,否則False  isnan(x) 若x為nan傳回True,否則False  isinf(x) 若x為inf傳回True,否則False 例如: #==========數值函數測試============ >>> importmath >>>math.fabs(-1.23)   #絕對值 1.23 >>>math.floor(1.5)    #向下取整數 1 >>>math.floor(-1.5)    #向下取整數 -2 >>>math.ceil(1.5)      #向上取整數 2 >>>math.ceil(-1.5)      #向上取整數 -1 >>>math.trunc(3.14159)  #捨去小數部分 3 >>>math.modf(3.14159)   #傳回浮點數之(小數,整數)元組 (0.14158999999999988,3.0) >>>math.fmod(10,3)     #傳回除法餘數(浮點數) 1.0 >>>10%3              #傳回除法餘數(整數) 1 >>>math.fsum([1,2,3])   #計算可迭代物件之元素和 6.0 >>>math.fsum((1,2,3))   #計算可迭代物件之元素和 6.0 >>>math.fsum(range(1,11))   #計算可迭代物件之元素和 55.0 要注意fmod()與modf()的不同,fmod()是取餘數,表示floatmodulus之意;而modf()用Python的取餘數運算子%得到的餘數為整數,而用math.fmod()得到的是浮點數. 階乘函數factorial()在數學上n階乘表示為n!=n*(n-1)*(n-2)...*2*1,但0!=1!=1: #==========階乘函數============ >>> importmath >>>math.factorial(0)           1 >>>math.factorial(1)  1 >>>math.factorial(2)  2 >>>math.factorial(3)  6 >>>math.factorial(10)  3628800 math官方文件中有排列函數math.perm()與組合函數math.comb(),但在dir(math)中卻沒有,實際測試也確實不支援: >>>math.perm(8,3)  Traceback(mostrecentcalllast):  File"",line1,in AttributeError:module'math'hasnoattribute'perm' >>>math.comb(8,3)  Traceback(mostrecentcalllast):  File"",line1,in AttributeError:module'math'hasnoattribute'comb' 這只好用factorial()來自行定義了,排列函數perm(n,k)是指在n個不同元素中取出k個做排列,總共有n!/(n-k)!排法(注意,排列是有順序的): defperm(n,k):   if(n<0ork<0):     returnNone   else:     returnmath.factorial(n)/math.factorial(n-k) 組合函數comb(n,k)是指在n個不同元素中取出k個,總共有n!/[k!(n-k)!]個取法(注意,組合是沒有順序的): defcomb(n,k):   if(n<0ork<0):     returnNone   else:     returnmath.factorial(n)/(math.factorial(k)*math.factorial(n-k)) 例如: >>>importmath   >>>defperm(n,k):  ...   if(n<0ork<0):   ...     returnNone  ...   else:  ...     returnmath.factorial(n)/math.factorial(n-k)   ... >>>defcomb(n,k):  ...   if(n<0ork<0):   ...     returnNone   ...   else:   ...     returnmath.factorial(n)/(math.factorial(k)*math.factorial(n-k))   ... >>>perm(8,3)    #8取3做排列 336.0 >>>comb(49,6)   #49取6做組合 13983816.0 #==========指數與對數函數============= >>> importmath >>>math.sqrt(2)       #開平方 1.4142135623730951 >>>math.pow(2,3)     #次方 8.0 >>>math.exp(1)        #自然指數 2.718281828459045 >>>math.expm1(1)     #自然指數少1 1.718281828459045 >>>math.e            #自然指數 2.718281828459045 >>>math.log(1)        #1的對數為0 0.0 >>>math.log(math.e)   #自然指數的對數為1 1.0 >>>math.log10(1)      #1的對數為0 0.0 >>>math.log10(10)     #常用對數 1.0 >>>math.log(8,2)      #8以2為基底的對數=3,因2**3=8 3.0 >>>math.log(49,7)     #49以7為基底的對數=2,因7**2=49 2.0 注意,math模組只能處理實數,複數需用cmath處理,例如math.sqrt(-1)會出現"domainerror"錯誤訊息,但cmath.sqrt(-1)則會傳回1j,例如: >>>math.sqrt(-1)      #math無法處理-1開根號 Traceback(mostrecentcalllast):  File"",line1,in ValueError:mathdomainerror   >>>cmath.sqrt(-1)     #cmath可處理-1開根號 1j  #==========角度與弧度轉換============ >>> importmath >>>math.degrees(math.pi)     #弧度轉角度pi=180 180.0 >>>math.degrees(math.tau)    #弧度轉角度2pi=360 360.0 >>>math.degrees(math.pi/2)    #弧度轉角度pi/2=90 90.0 >>>math.degrees(math.pi/4)    #弧度轉角度pi/4=45 45.0 >>>math.degrees(1.234)        #弧度轉角度 70.70299191914359 >>>math.radians(70.703)       #角度轉弧度 1.234000141037551 >>>math.radians(30)          #角度轉弧度 0.5235987755982988 >>>math.radians(45)          #角度轉弧度 0.7853981633974483 >>>math.radians(60)          #角度轉弧度 1.0471975511965976 >>>math.radians(90)          #角度轉弧度 1.5707963267948966 >>>math.radians(180)         #角度轉弧度(pi) 3.141592653589793 >>>math.radians(360)         #角度轉弧度(2pi) 6.283185307179586 三角函數是圓函數,一共有六個,但math模組只提供了三個:sin(),cos(),與tan(),因為其他三個是這三個的倒數,即cot=1/tan,sec=1/cos,csc=1/sin,其反函數也是如此.參考: #維基:三角函數 #==========三角函數============ >>> importmath >>>math.sin(math.pi/6)  0.49999999999999994 >>>math.sin(math.pi/2)   1.0 >>>math.sin(math.pi)   1.2246467991473532e-16 >>>math.asin(1)   1.5707963267948966 >>>math.asin(0)   0.0 雙曲函數起源於解決達文西的懸鍊曲線問題(例如吊橋與架高電纜以前被認為是拋物線,事實上是雙曲線),也應用在非歐幾何與相對論等.雙曲函數跟三角函數長得很像,函數名稱多了一個h,但其實與三角函數無關,不過這兩個無關的函數在尤拉公式出現後卻統一在複變數理論下.三角函數與雙曲函數在複平面上形狀是一樣的,三角函數的週期是2*pi,而雙曲函數則是2*pi*i. 雙曲函數定義如下(定義域為實數): 其實只要定義sinh(),cosh(),與tanh()即可,另外三個只是倒數而已.雖然雙曲函數雖然與三角函數無關,但卻有類似三角函數之特性,因為其公式除了正負號略為不同外均可套用,而且在虛數圓角上與三角函數具有如下關係: 參考: #維基:雙曲函數 # 雙曲函數及反三角函數 # 雙曲函數的基本數性質 # 4980N031的學習歷程檔案 #雙曲函數 # 可能是最好的讲解双曲函数的文章 # python弧度制轉換三角函數反三角函數雙曲反雙曲 #==========雙曲函數============ >>> importmath >>>math.sinh(1)   1.1752011936438014 >>>math.cosh(1)  1.5430806348152437 >>>math.tanh(1)  0.7615941559557649 >>>math.asinh(1.1752011936438014)  #反雙曲正弦 1.0 >>>math.acosh(1.5430806348152437)  #反雙曲餘弦 1.0 >>>math.atanh(0.7615941559557649)  #反雙曲正切 0.9999999999999999 4.cmath模組的函數: cmath模組的運算元是複數,常數增加了複數的infj與nanj,方法則大部分與math相同,不過沒有階乘函數(因為複數沒有階乘),但增加了如下三個與複數座標轉換有關的方法,方便在卡式座標與極座標之間轉換:  cmath方法 說明  polar(x) 傳回複數x的極座標表示法元組(r,p),r=長度,p=角度  rect(r,p) 傳回極座標(r,p)的複數  phase(x) 傳回複數x的弧度(radian) #==========cmath測試============ >>> importmath >>> importcmath >>>print(cmath.infj)  infj >>>print(cmath.nanj)  nanj >>>type(cmath.nanj)                #複數類型 >>>type(cmath.nan)  >>>type(cmath.infj)                 #複數類型 >>>type(cmath.inf)    >>>cmath.polar(1+1j)               #複數轉極座標 (1.4142135623730951,0.7853981633974483) >>>cmath.rect(1.4142135623730951,0.7853981633974483)   (1.0000000000000002+1.0000000000000002j)     #極座標轉直角坐標 >>>cmath.phase(1+1j)               #傳回複數弧度 0.7853981633974483 >>>math.degrees(cmath.phase(1+1j))   #弧度轉角度 45.0 >>>cmath.sinh(1+1j)  (0.6349639147847361+1.2984575814159773j)  >>>cmath.cosh(1+1j)  (0.8337300251311491+0.9888977057628651j)  >>>cmath.tanh(1+1j)  (1.0839233273386946+0.2717525853195118j)  我覺得cmath.polar()與cmath.rect()在學習交流電分析時蠻好用的. 張貼者: 小狐狸事務所 於 10/21/201905:53:00下午 以電子郵件傳送這篇文章 BlogThis! 分享至Twitter 分享至Facebook 標籤: Python 沒有留言 : 張貼留言 較新的文章 較舊的文章 首頁 訂閱: 張貼留言 ( Atom ) 總網頁瀏覽量 小狐狸事務所 載入中… 訂閱 發表文章 Atom 發表文章 留言 Atom 留言 Translate 聯絡表單 名稱 以電子郵件傳送 * 訊息 * 網誌存檔 ►  2022 ( 269 ) ►  八月 ( 21 ) ►  七月 ( 34 ) ►  六月 ( 31 ) ►  五月 ( 35 ) ►  四月 ( 42 ) ►  三月 ( 41 ) ►  二月 ( 39 ) ►  一月 ( 26 ) ►  2021 ( 453 ) ►  十二月 ( 28 ) ►  十一月 ( 38 ) ►  十月 ( 43 ) ►  九月 ( 47 ) ►  八月 ( 36 ) ►  七月 ( 25 ) ►  六月 ( 38 ) ►  五月 ( 30 ) ►  四月 ( 35 ) ►  三月 ( 37 ) ►  二月 ( 41 ) ►  一月 ( 55 ) ►  2020 ( 483 ) ►  十二月 ( 42 ) ►  十一月 ( 33 ) ►  十月 ( 35 ) ►  九月 ( 43 ) ►  八月 ( 35 ) ►  七月 ( 30 ) ►  六月 ( 46 ) ►  五月 ( 46 ) ►  四月 ( 39 ) ►  三月 ( 48 ) ►  二月 ( 48 ) ►  一月 ( 38 ) ▼  2019 ( 459 ) ►  十二月 ( 38 ) ►  十一月 ( 39 ) ▼  十月 ( 34 ) 日元對台幣貶值 關閉Hostinger自動扣款 Python學習筆記:Numpy(一):建立陣列 2019年第43周記事 市圖還書1本:拒當AI時代的局外人 市圖還書1本:雙動能投資 matplotlib不支援jpg輸出問題 看完監獄醫生 好書:白話微積分(3版) Python學習筆記:數學模組math與cmath測試 好書:大學不迷茫 2019年第42周記事 好書:BeyondArtificialIntelligence:FromHumanCo... 市圖還書5本 購買TECO東元個人隨身型空氣清淨機NN0802BD 三本好書 購買Pixel4 R與Python在資料科學上的比較 好書:DataSciencewithJulia 停損的數學 看完天才醫生車耀漢 2019年第41周記事 Python學習筆記:math與Numpy的效能比較 爸的手機續約三年 Django學習筆記索引 測試網站搬遷後要做的配套異動 2019年第40周記事 PHP虛擬主機Hostinger到期不續租 Python學習筆記:Django2測試(三):模板的匯入與繼承 重讀統計學 高科大還書一本 看完陽光先生 4G門號續約兩年 口口?口! ►  九月 ( 34 ) ►  八月 ( 27 ) ►  七月 ( 50 ) ►  六月 ( 38 ) ►  五月 ( 26 ) ►  四月 ( 51 ) ►  三月 ( 47 ) ►  二月 ( 32 ) ►  一月 ( 43 ) ►  2018 ( 394 ) ►  十二月 ( 38 ) ►  十一月 ( 36 ) ►  十月 ( 30 ) ►  九月 ( 33 ) ►  八月 ( 31 ) ►  七月 ( 26 ) ►  六月 ( 30 ) ►  五月 ( 48 ) ►  四月 ( 26 ) ►  三月 ( 38 ) ►  二月 ( 26 ) ►  一月 ( 32 ) ►  2017 ( 317 ) ►  十二月 ( 35 ) ►  十一月 ( 30 ) ►  十月 ( 24 ) ►  九月 ( 34 ) ►  八月 ( 30 ) ►  七月 ( 27 ) ►  六月 ( 28 ) ►  五月 ( 19 ) ►  四月 ( 22 ) ►  三月 ( 21 ) ►  二月 ( 30 ) ►  一月 ( 17 ) ►  2016 ( 296 ) ►  十二月 ( 17 ) ►  十一月 ( 23 ) ►  十月 ( 28 ) ►  九月 ( 24 ) ►  八月 ( 28 ) ►  七月 ( 33 ) ►  六月 ( 28 ) ►  五月 ( 26 ) ►  四月 ( 24 ) ►  三月 ( 24 ) ►  二月 ( 25 ) ►  一月 ( 16 ) ►  2015 ( 296 ) ►  十二月 ( 18 ) ►  十一月 ( 22 ) ►  十月 ( 19 ) ►  九月 ( 25 ) ►  八月 ( 27 ) ►  七月 ( 24 ) ►  六月 ( 15 ) ►  五月 ( 23 ) ►  四月 ( 32 ) ►  三月 ( 51 ) ►  二月 ( 22 ) ►  一月 ( 18 ) ►  2014 ( 323 ) ►  十二月 ( 29 ) ►  十一月 ( 18 ) ►  十月 ( 16 ) ►  九月 ( 15 ) ►  七月 ( 11 ) ►  六月 ( 27 ) ►  五月 ( 41 ) ►  四月 ( 38 ) ►  三月 ( 43 ) ►  二月 ( 38 ) ►  一月 ( 47 ) ►  2013 ( 267 ) ►  十二月 ( 22 ) ►  十一月 ( 23 ) ►  十月 ( 35 ) ►  九月 ( 28 ) ►  八月 ( 13 ) ►  七月 ( 32 ) ►  六月 ( 27 ) ►  五月 ( 13 ) ►  四月 ( 19 ) ►  三月 ( 18 ) ►  二月 ( 12 ) ►  一月 ( 25 ) ►  2012 ( 49 ) ►  十二月 ( 2 ) ►  八月 ( 5 ) ►  七月 ( 5 ) ►  六月 ( 2 ) ►  五月 ( 4 ) ►  四月 ( 5 ) ►  三月 ( 4 ) ►  二月 ( 10 ) ►  一月 ( 12 ) ►  2011 ( 178 ) ►  十二月 ( 9 ) ►  十一月 ( 17 ) ►  十月 ( 5 ) ►  九月 ( 1 ) ►  八月 ( 7 ) ►  七月 ( 7 ) ►  六月 ( 5 ) ►  五月 ( 12 ) ►  四月 ( 29 ) ►  三月 ( 29 ) ►  二月 ( 21 ) ►  一月 ( 36 ) ►  2010 ( 201 ) ►  十二月 ( 18 ) ►  十一月 ( 30 ) ►  十月 ( 23 ) ►  九月 ( 8 ) ►  八月 ( 11 ) ►  七月 ( 9 ) ►  六月 ( 16 ) ►  五月 ( 14 ) ►  四月 ( 47 ) ►  三月 ( 5 ) ►  二月 ( 3 ) ►  一月 ( 17 ) ►  2009 ( 256 ) ►  十二月 ( 18 ) ►  十一月 ( 29 ) ►  十月 ( 6 ) ►  九月 ( 38 ) ►  八月 ( 25 ) ►  七月 ( 24 ) ►  六月 ( 17 ) ►  五月 ( 16 ) ►  四月 ( 4 ) ►  三月 ( 24 ) ►  二月 ( 34 ) ►  一月 ( 21 ) ►  2008 ( 303 ) ►  十二月 ( 28 ) ►  十一月 ( 18 ) ►  十月 ( 26 ) ►  九月 ( 29 ) ►  八月 ( 30 ) ►  七月 ( 62 ) ►  六月 ( 59 ) ►  五月 ( 48 ) ►  四月 ( 2 ) ►  三月 ( 1 ) 文章標籤 ♥ ( 19 ) ♥♥ ( 10 ) ♥♥♥ ( 9 ) 人工智慧 ( 86 ) 八字學 ( 1 ) 大數據 ( 6 ) 小狐狸 ( 73 ) 小狐狸生態 ( 22 ) 工作 ( 48 ) 手機 ( 29 ) 日文 ( 3 ) 木工 ( 23 ) 比特幣 ( 2 ) 主機 ( 72 ) 占星術 ( 6 ) 生活 ( 1142 ) 生活雜記 ( 8 ) 多媒體 ( 4 ) 好文 ( 6 ) 好書 ( 397 ) 好站 ( 252 ) 自作專案 ( 3 ) 自動化 ( 29 ) 系統 ( 4 ) 其他 ( 65 ) 易經 ( 1 ) 物理學 ( 10 ) 物聯網 ( 250 ) 信號處理 ( 5 ) 架站 ( 14 ) 相術 ( 2 ) 科學 ( 22 ) 英文 ( 9 ) 計算語言學 ( 3 ) 音樂 ( 73 ) 飛控 ( 25 ) 食譜 ( 70 ) 修行 ( 22 ) 借書 ( 5 ) 旅行 ( 44 ) 旅遊 ( 1 ) 書籤 ( 2 ) 索引 ( 30 ) 能源 ( 83 ) 動畫 ( 2 ) 區塊鏈 ( 3 ) 專案 ( 20 ) 排版 ( 3 ) 控制系統 ( 1 ) 教育 ( 17 ) 理財 ( 123 ) 軟體開發 ( 8 ) 通訊 ( 3 ) 備忘 ( 2 ) 創客 ( 31 ) 單晶片 ( 30 ) 智慧音箱 ( 1 ) 無人機 ( 18 ) 硬體 ( 38 ) 紫微斗數 ( 2 ) 統計 ( 4 ) 統計學 ( 10 ) 虛擬幣 ( 3 ) 評論 ( 169 ) 量化投資 ( 5 ) 雲端 ( 21 ) 園藝 ( 1 ) 新知識 ( 1 ) 新產品 ( 1 ) 新軟體 ( 7 ) 資安 ( 7 ) 資料科學 ( 32 ) 資料庫 ( 4 ) 農業 ( 23 ) 電子零件 ( 27 ) 電子學 ( 18 ) 電腦 ( 210 ) 電腦技術 ( 12 ) 電路學 ( 1 ) 演算法 ( 8 ) 網頁技術 ( 223 ) 網路 ( 43 ) 網路爬蟲 ( 30 ) 網購 ( 318 ) 語言學 ( 55 ) 語音技術 ( 4 ) 語音辨識 ( 10 ) 影像處理 ( 1 ) 影像辨識 ( 2 ) 數學 ( 21 ) 線上工具 ( 3 ) 線性代數 ( 1 ) 論文 ( 1 ) 養生 ( 20 ) 樹莓派 ( 189 ) 機器人 ( 6 ) 機器學習 ( 156 ) 歷史 ( 60 ) 戲劇 ( 24 ) 還書 ( 120 ) 韓文 ( 1 ) 韓劇 ( 10 ) 醫藥 ( 55 ) 繪圖 ( 3 ) 藝術 ( 2 ) 讀書劄記 ( 9 ) 邏輯設計 ( 17 ) Android ( 13 ) AngularJS ( 1 ) Anime ( 1 ) App ( 30 ) Appfog ( 4 ) Arduino ( 179 ) ASP ( 11 ) AutoIt ( 15 ) AWS ( 16 ) Azure ( 1 ) BananaPi ( 3 ) BigData ( 1 ) Blynk ( 7 ) Bokeh ( 2 ) Bootstrap ( 26 ) brython ( 1 ) C語言 ( 19 ) Chart.js ( 2 ) Chatbot ( 5 ) Cheatsheet ( 2 ) CKeditor ( 1 ) Corona ( 3 ) CSS ( 10 ) D3.js ( 6 ) DataMining ( 1 ) Django ( 19 ) DSP ( 3 ) EasyUI ( 48 ) ESP32 ( 52 ) ESP8266 ( 144 ) Excel ( 11 ) ExtJS ( 24 ) Fintech ( 18 ) Firebase ( 3 ) Flask ( 3 ) FPGA ( 1 ) GAE ( 40 ) GAS ( 2 ) GCP ( 4 ) Git ( 11 ) GitHub ( 5 ) Go ( 1 ) Google ( 24 ) Highcharts ( 2 ) HomeAssistant ( 1 ) HTML5 ( 44 ) IC設計 ( 7 ) Java ( 100 ) JavaFX ( 1 ) Javascript ( 89 ) Jetson ( 11 ) Joomla ( 3 ) jqPlot ( 1 ) jQuery ( 125 ) jQueryMobile ( 30 ) jQueryUI ( 35 ) JSP ( 2 ) Julia ( 12 ) Kali ( 1 ) Keras ( 1 ) Kotlin ( 1 ) Line ( 3 ) Linux ( 14 ) LoRa ( 12 ) Lua ( 6 ) MacOS ( 11 ) Masonite ( 1 ) Mathematics ( 2 ) Matplotlib ( 6 ) mermaid.js ( 1 ) Micro:bit ( 3 ) MicroPython ( 91 ) MongoDB ( 3 ) Nginx ( 3 ) NLP ( 29 ) NLTK ( 5 ) Node.js ( 14 ) NoSQL ( 1 ) Numpy ( 1 ) OpenCV ( 2 ) p5.js ( 14 ) Pandas ( 7 ) PHP ( 109 ) Praat ( 23 ) Python ( 438 ) PyTorch ( 11 ) R語言 ( 43 ) RaspberryPi ( 132 ) Ruby ( 1 ) scikit-learn ( 2 ) SciPy ( 4 ) Seaborn ( 3 ) SpaCy ( 4 ) SQL ( 15 ) SQLite ( 1 ) STM32 ( 2 ) Swift ( 6 ) TCP/IP ( 6 ) TensorFlow ( 19 ) tensorflow.js ( 3 ) Three.js ( 1 ) TinyMCE ( 1 ) tkinter ( 16 ) UAV ( 3 ) Ubuntu ( 2 ) Verilog ( 1 ) VHDL ( 1 ) VoIP ( 1 ) Vue ( 7 ) WebGL ( 3 ) Wireshark ( 2 ) WordPress ( 18 ) WSH ( 5 ) 常用連結 QR-Code產生器 爾灣分校Python函式庫 神秘金字塔 MyGitHib Google協作平台 Hinet信箱 Dropbox box Aliexpress bittrix24 CCompiler CH.Tseng G.T.Wang部落格 HomePi HTMLCleaner IBMSwiftSandbox Inside Kej'sRetriever muckibu.de OneDrive Pinterest Python機器學習 Rmanual Rapidgator TutorialsPoint VirusTotal Youtube-mp3 Zamzar線上轉檔 中華電信Hibox 台大網路測速 線上C編譯器 線上OCR 螢幕錄影 訂台鐵與高鐵票 高師大圖書館 高科大圖書館 高雄市立圖書館 線上方程式 音頻轉換器 CSS色碼表 Youtube轉mp3 熱門文章 Arduino基本語法筆記 Arduino的程式語法基於C/C++,其實就是客製化的C/C++語言,其程式架構仿自廣為藝術與設計界人士熟悉的Processing語言,而其開發工具ArduinoIDE則是衍生自以Processing為基礎的電子開發設計平台Wiring.由於... Arduino串列埠測試(UART) 今天要下午才進辦公室,早上都在家,所以研究測試了一下Arduino的串列埠,紀錄整理如下.所謂串列埠是源自IBMPC的RS-232通訊協定,也就是個人電腦後面的COM埠(9針公座DB-9),現在新的桌上型電腦與筆電大都沒有接出COM埠了,... GooglePlay安裝或更新App一直顯示"正在等待下載"問題 最近我的Note8手機要更新Yahoo股市App時一直顯示 "正在等待下載",但是進度條卻不動:我按GooglePlay左上角的三條槓選"設定",點"應用程式下載偏好設定"改... Python內建GUI模組tkinter測試(一):建立視窗 最近因為玩樹苺派的關係,接觸到Python內建的GUI開發模組Tkinter(意思是TkInterface),初步覺得比用Java的Swing還要來得容易,因此就來學看看唄!Tk原先是為Tcl語言所開發的GUI套件,因為是T... Java複習筆記:陣列 陣列是程式員最常用的資料結構,Java的陣列屬於傳統的固定式陣列,亦即陣列元素資料類型必需相同,而且元素個數必須先宣告才能使用,不像Javascript等動態語言之陣列允許異質性資料,且長度不需先宣告即可使用.當然,Java陣列也不支援關聯性陣列,Java... 邏輯設計筆記序向篇:Latch(電栓)與Flip-Flop(正反器) 這個月為了邏輯設計授課努力打了200多頁簡報,為了查閱方便整理在此,同時也讓我的外籍學生們可利用Google翻譯以母語複習上課內容.由於本次協同授課負責序向邏輯部分,因此先整理序向邏輯,組合邏輯以後有機會再整理.雖然說現在設計IC大都改用VHDL或V... jQueryUI的日期選擇器datepicker測試 近兩周都在玩jQueryUI的日曆小工具(或日期選擇器datepicker),就是讓使用者可以直接在日曆上選取日期的小工具,而且日期格式可以指定.這個widget小工具根據書上講是jQueryUI最古老,功能選項也最龐大的一個,照官網範例三兩下就看到... ★ESP8266WiFi模組ATcommand測試 這是我今年四月以$180向露天賣家XLAN買的超小型WiFi模組(現已降價為$145),採用上海樂鑫科技的ESP8266晶片,板子型式是ESP-01,這是Arduino最經濟的WiFi方案,因為目前買一塊內建WiFi的Arduin... ★ESP8266WiFi模組與Arduino連線測試 經過兩個月來的摸索,對於Arduino經由ESP8266連上網路的實驗終於來到實作階段.這當中也分心去研究如何製做ESP8266的轉接板,雖已經有腹案,但覺得還是先把連網實驗做完再來搞定轉接板好了.這兩塊板子互連主要有兩個障礙,一是開發階段串列埠不夠的問題... Arduino的聲音測試(一) 很早就想做這個實驗,因為只需要ArduinoNANO加上一個蜂鳴器就可以進行了,頂多加一顆按鈕開關,這跟物聯網無關,因此不需要用到ESP8266上網.趁著中秋連假,就把這個簡單的小實驗做完吧!以下實驗所用的程式是參考下列幾本書裡面的範例加以修改來的:... 關於我自己 小狐狸事務所 熱愛自由不想被拘束,無法忍受無聊而不斷學習的射手座,因為記性不好必須在部落格紀錄思考學習與生活點滴的平凡上班族. 檢視我的完整簡介 追蹤者



請為這篇文章評分?