SlideShare a Scribd company logo
1 of 3
Download to read offline
範例 (一)
 畫出若干個函式的最大值,最小值,平均值
以下利用類別裝飾器計算若干個函式的最大值,最小值與平均值,
函式的數量可多可少,統一輸入裝飾器的函式運算子內計算。程式
最後利用 pylab 畫出各個圖形如下:
10附錄B 裝飾器
範例 (二)
11附錄B 裝飾器
import pylab
# 類別裝飾器
class Fn_Val :
# 起始設定方法
def __init__( self , fn ) :
self.fn = fn
# 函式運算子
def __call__( self , xs , *fns ) :
ys = []
for x in xs :
ys += [ self.fn( list( map( lambda f : f(x) , fns ) ) ) ]
return ys
@Fn_Val
def maxf(xs) : return max(xs)
@Fn_Val
def minf(xs) : return min(xs)
@Fn_Val
def avgf(xs) : return (max(xs)+min(xs))/2
# sin(x/2)
def sin2(x) : return pylab.sin(x/2)
範例 (三)
12附錄B 裝飾器
if __name__ == ’__main__’ :
pi = pylab.pi
# [0,2pi] 200 個點
xs = pylab.linspace(0, 2*pi, 200)
# 利用裝飾器計算若干函數的最大值,最小值,平均值
ys1 = maxf(xs, pylab.sin, pylab.cos, sin2)
ys2 = minf(xs, pylab.sin, pylab.cos, sin2)
ys3 = avgf(xs, pylab.sin, pylab.cos, sin2)
# 白底
pylab.figure(facecolor=’w’)
# 畫 sin(x) cos(x) sin(x/2) 函式圖形
pylab.plot(xs, pylab.sin(xs), color=’r’, lw=3, label=’sin(x)’)
pylab.plot(xs, pylab.cos(xs), color=’g’, lw=3, label=’cos(x)’)
pylab.plot(xs, sin2(xs), color=’b’, lw=3, label=’sin(x/2)’)
# 畫 max min avg 圖形
pylab.plot(xs, ys1, ’*c:’, lw=1, label=’max val’)
pylab.plot(xs, ys2, ’om:’, lw=1, label=’min val’)
pylab.plot(xs, ys3, ’.k:’, lw=1, label=’avg val’)
pylab.title("max, min, avg values of sin(x), cos(x), sin(x/2)", fontsize=20)
pylab.grid()
pylab.legend()
pylab.show()

More Related Content

What's hot (20)

Ppt 138-142
Ppt 138-142Ppt 138-142
Ppt 138-142
 
Ch12 範例
Ch12 範例Ch12 範例
Ch12 範例
 
Ppt 120-126
Ppt 120-126Ppt 120-126
Ppt 120-126
 
Ppt 120-126
Ppt 120-126Ppt 120-126
Ppt 120-126
 
Ch4 教學
Ch4 教學Ch4 教學
Ch4 教學
 
Ch5 教學
Ch5 教學Ch5 教學
Ch5 教學
 
Ch9 範例
Ch9 範例Ch9 範例
Ch9 範例
 
Ppt 78-100
Ppt 78-100Ppt 78-100
Ppt 78-100
 
Ppt 127-135
Ppt 127-135Ppt 127-135
Ppt 127-135
 
Ppt 136-140
Ppt 136-140Ppt 136-140
Ppt 136-140
 
Ppt 1-50
Ppt 1-50Ppt 1-50
Ppt 1-50
 
Ch6 教學
Ch6 教學Ch6 教學
Ch6 教學
 
Ch7 範例
Ch7 範例Ch7 範例
Ch7 範例
 
Ch9
Ch9Ch9
Ch9
 
Ch5 範例
Ch5 範例Ch5 範例
Ch5 範例
 
Ch10 習題
Ch10 習題Ch10 習題
Ch10 習題
 
Ppt 127-135
Ppt 127-135Ppt 127-135
Ppt 127-135
 
Ch11 範例
Ch11 範例Ch11 範例
Ch11 範例
 
Sym py edu
Sym py eduSym py edu
Sym py edu
 
Python p.193 197
Python p.193 197Python p.193 197
Python p.193 197
 

Similar to Appendix B 範例

lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7Justin Lin
 
ncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxNCU MCL
 
函數微分_範例.pptx
函數微分_範例.pptx函數微分_範例.pptx
函數微分_範例.pptxmclmath
 
ncuma_函式.pptx
ncuma_函式.pptxncuma_函式.pptx
ncuma_函式.pptxNCU MCL
 
Php extension开发
Php extension开发Php extension开发
Php extension开发thinkinlamp
 
那些年,我們一起看的例外
那些年,我們一起看的例外那些年,我們一起看的例外
那些年,我們一起看的例外kao kuo-tung
 
ncuma_函數畫圖.pptx
ncuma_函數畫圖.pptxncuma_函數畫圖.pptx
ncuma_函數畫圖.pptxNCU MCL
 
函數畫圖.pptx
函數畫圖.pptx函數畫圖.pptx
函數畫圖.pptxmclmath
 
Introduction to Basic Haskell Components (In Chinese)
Introduction to Basic Haskell Components (In Chinese)Introduction to Basic Haskell Components (In Chinese)
Introduction to Basic Haskell Components (In Chinese)ChengHui Weng
 
Sql培训 (1)
Sql培训 (1)Sql培训 (1)
Sql培训 (1)jhao niu
 
ncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxNCU MCL
 
Python入門:5大概念初心者必備 2021/11/18
Python入門:5大概念初心者必備 2021/11/18Python入門:5大概念初心者必備 2021/11/18
Python入門:5大概念初心者必備 2021/11/18Derek Lee
 
实验一 Mathematica软件简介
实验一   Mathematica软件简介实验一   Mathematica软件简介
实验一 Mathematica软件简介guestfe33f0e
 

Similar to Appendix B 範例 (20)

Appendix B
Appendix BAppendix B
Appendix B
 
lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7lambda/closure – JavaScript、Python、Scala 到 Java SE 7
lambda/closure – JavaScript、Python、Scala 到 Java SE 7
 
functional-scala
functional-scalafunctional-scala
functional-scala
 
ncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxncuma_函數微分計算.pptx
ncuma_函數微分計算.pptx
 
函數微分_範例.pptx
函數微分_範例.pptx函數微分_範例.pptx
函數微分_範例.pptx
 
ncuma_函式.pptx
ncuma_函式.pptxncuma_函式.pptx
ncuma_函式.pptx
 
Ch10
Ch10Ch10
Ch10
 
Php extension开发
Php extension开发Php extension开发
Php extension开发
 
Scala+RDD
Scala+RDDScala+RDD
Scala+RDD
 
那些年,我們一起看的例外
那些年,我們一起看的例外那些年,我們一起看的例外
那些年,我們一起看的例外
 
P127 135 new
P127 135 newP127 135 new
P127 135 new
 
ncuma_函數畫圖.pptx
ncuma_函數畫圖.pptxncuma_函數畫圖.pptx
ncuma_函數畫圖.pptx
 
函數畫圖.pptx
函數畫圖.pptx函數畫圖.pptx
函數畫圖.pptx
 
Introduction to Basic Haskell Components (In Chinese)
Introduction to Basic Haskell Components (In Chinese)Introduction to Basic Haskell Components (In Chinese)
Introduction to Basic Haskell Components (In Chinese)
 
Sql培训 (1)
Sql培训 (1)Sql培训 (1)
Sql培训 (1)
 
ncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptx
 
Ch5
Ch5Ch5
Ch5
 
Ch7
Ch7Ch7
Ch7
 
Python入門:5大概念初心者必備 2021/11/18
Python入門:5大概念初心者必備 2021/11/18Python入門:5大概念初心者必備 2021/11/18
Python入門:5大概念初心者必備 2021/11/18
 
实验一 Mathematica软件简介
实验一   Mathematica软件简介实验一   Mathematica软件简介
实验一 Mathematica软件简介
 

More from hungchiayang1 (20)

Exercise 1 3
Exercise 1 3Exercise 1 3
Exercise 1 3
 
Python differential equation
Python differential equationPython differential equation
Python differential equation
 
化學系 python 習題
化學系 python 習題化學系 python 習題
化學系 python 習題
 
化學系 python 練習
化學系 python 練習化學系 python 練習
化學系 python 練習
 
化學系 python 教學
化學系 python 教學化學系 python 教學
化學系 python 教學
 
Ppt 151-151
Ppt 151-151Ppt 151-151
Ppt 151-151
 
Ppt 136-136
Ppt 136-136Ppt 136-136
Ppt 136-136
 
Ppt 143-143
Ppt 143-143Ppt 143-143
Ppt 143-143
 
Ppt 137-137
Ppt 137-137Ppt 137-137
Ppt 137-137
 
Ppt 150-150
Ppt 150-150Ppt 150-150
Ppt 150-150
 
Ppt 26-50
Ppt 26-50Ppt 26-50
Ppt 26-50
 
Ppt 145-149
Ppt 145-149Ppt 145-149
Ppt 145-149
 
Ppt 174-174
Ppt 174-174Ppt 174-174
Ppt 174-174
 
Ppt 1-25
Ppt 1-25Ppt 1-25
Ppt 1-25
 
Ppt 144-144
Ppt 144-144Ppt 144-144
Ppt 144-144
 
Ppt 167-173
Ppt 167-173Ppt 167-173
Ppt 167-173
 
Ppt 152-155
Ppt 152-155Ppt 152-155
Ppt 152-155
 
Ppt 156-156
Ppt 156-156Ppt 156-156
Ppt 156-156
 
Ppt 166-166
Ppt 166-166Ppt 166-166
Ppt 166-166
 
Ppt 165-165
Ppt 165-165Ppt 165-165
Ppt 165-165
 

Recently uploaded

中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,
中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,
中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,Xin Yun Teo
 
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制jakepaige317
 
educ6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxeduc6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxmekosin001123
 
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxEDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxmekosin001123
 
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书kathrynalvarez364
 
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书kathrynalvarez364
 
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单jakepaige317
 
EDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxEDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxmekosin001123
 
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...黑客 接单【TG/微信qoqoqdqd】
 
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单kathrynalvarez364
 

Recently uploaded (10)

中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,
中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,
中国文学, 了解王安石变法,熙宁变法,熙盛变法- 中国古代改革的类型- 富国强兵,
 
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
 
educ6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxeduc6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptx
 
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxEDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
 
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书
布莱德福德大学毕业证制作/英国本科学历如何认证/购买一个假的香港中文大学专业进修学院硕士学位证书
 
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书
澳洲圣母大学毕业证制作/加拿大硕士学历代办/购买一个假的中央警察大学硕士学位证书
 
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单
日本九州齿科大学毕业证制作🚩定制本科卒业证书🚩哪里可以购买假美国西南基督复临安息日会大学成绩单
 
EDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxEDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptx
 
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
 
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单
日本姫路独协大学毕业证制作/修士学位记多少钱/哪里可以购买假美国圣何塞州立大学成绩单
 

Appendix B 範例

  • 2. 範例 (二) 11附錄B 裝飾器 import pylab # 類別裝飾器 class Fn_Val : # 起始設定方法 def __init__( self , fn ) : self.fn = fn # 函式運算子 def __call__( self , xs , *fns ) : ys = [] for x in xs : ys += [ self.fn( list( map( lambda f : f(x) , fns ) ) ) ] return ys @Fn_Val def maxf(xs) : return max(xs) @Fn_Val def minf(xs) : return min(xs) @Fn_Val def avgf(xs) : return (max(xs)+min(xs))/2 # sin(x/2) def sin2(x) : return pylab.sin(x/2)
  • 3. 範例 (三) 12附錄B 裝飾器 if __name__ == ’__main__’ : pi = pylab.pi # [0,2pi] 200 個點 xs = pylab.linspace(0, 2*pi, 200) # 利用裝飾器計算若干函數的最大值,最小值,平均值 ys1 = maxf(xs, pylab.sin, pylab.cos, sin2) ys2 = minf(xs, pylab.sin, pylab.cos, sin2) ys3 = avgf(xs, pylab.sin, pylab.cos, sin2) # 白底 pylab.figure(facecolor=’w’) # 畫 sin(x) cos(x) sin(x/2) 函式圖形 pylab.plot(xs, pylab.sin(xs), color=’r’, lw=3, label=’sin(x)’) pylab.plot(xs, pylab.cos(xs), color=’g’, lw=3, label=’cos(x)’) pylab.plot(xs, sin2(xs), color=’b’, lw=3, label=’sin(x/2)’) # 畫 max min avg 圖形 pylab.plot(xs, ys1, ’*c:’, lw=1, label=’max val’) pylab.plot(xs, ys2, ’om:’, lw=1, label=’min val’) pylab.plot(xs, ys3, ’.k:’, lw=1, label=’avg val’) pylab.title("max, min, avg values of sin(x), cos(x), sin(x/2)", fontsize=20) pylab.grid() pylab.legend() pylab.show()