使用Python進行科學計算_第1頁
使用Python進行科學計算_第2頁
使用Python進行科學計算_第3頁
使用Python進行科學計算_第4頁
使用Python進行科學計算_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、使用Python進行科學計算陳彬為什么選PythonPython簡介Python與科學計算為什么選Python科學計算的基本任務:有效性、高效性選擇何種計算機語言進行科學計算有效性驗證工作?u 易用性u 可讀性u 擴展性為什么選Pythonu Python: 入門容易,學習曲線平滑,且備受歡迎u Python的哲學思想(by Tim Peters) Beautiful is better than ugly. (優(yōu)雅勝于丑陋) Explicit is better than implicit. (明了勝于晦澀) Simple is better than complex. (簡潔勝于復雜) C

2、omplex is better than complicated. (復雜勝于繁瑣) Readability counts. (可讀性極具價值)Python 是一種優(yōu)雅、清晰、簡單,極具可讀性的高級計算機程序設計語言。uPython是一個極具包容性和開放性的框架 功能完備,易用的標準庫 活躍、開放的社區(qū) 豐富、多樣的第三方開發(fā)包 2. Python簡介Python不同于傳統(tǒng)嚴格語法的計算機語言(C,C+,Java等),它的語法較為靈活,更接近于自然語言。Python將許多機器層面上的細節(jié)加以隱藏,交給編譯器處理,著重凸顯邏輯層面的編程思考。u變量與數(shù)據(jù)類型 Python的變量無需聲明 a =

3、 3.14 print a, type(a) 基本數(shù)據(jù)類型: a = 10# int a = 3.14# float a = True# Boolean a = Hello# string a = 1 + 2j# complex u變量與數(shù)據(jù)類型 復雜數(shù)據(jù)類型 d1 = 1, True, hello # list d2 = (2, 3.14, world) # tuple d11 = 1.3 # 賦值 print d20 # 訪問 print d10 : 3 : 2字典(dict), 集合(set)等 u運算符 數(shù)學運算符: +, -, *, /, % * 乘方print 2*0.5 條件運算

4、符: =, !=, ,is, is not, in print 3 in 1, 2, 3 邏輯運算符: and, or, not u流程控制 分支控制: if H in Hello:print Y else:print Nu流程控制 循環(huán)控制:sum = 0for i in range(1, 101):sum += iprint sumsum , i = 0, 100while i 0:sum += ii = i - 1print sum#include int main() int sum = 0 for (int i = 0; i = 100; i +) sum += i; printf(

5、“%d”, sum);u流程控制 更像一個Pythonista 的循環(huán) L = n * 2 for n in range(10) X = 1, 2, 3, 11, 12, 13, 22, 25, 26 L = sum(n for n in X if n % 2) 循環(huán)對象, 迭代器, 循環(huán)器等概念u函數(shù) a = 3 b = 4 def square_sum(x, y):#函數(shù)定義 c = x* 2 + y * 2d = c * 0.5return c, d#允許多返回值 z, w = square_sum(a, b) #函數(shù)調用 print z, w3. Python與科學計算u安裝與環(huán)境配置

6、 Python 2.7 或 Python 3.4/downloads 第三方開發(fā)包 numpy,scipy, matplotlib,OpenCV 加州大學歐文分校(資源匯編) /gohlke/pythonlibs/3. Python與科學計算u安裝與環(huán)境配置 集成開發(fā)環(huán)境 Python自帶開發(fā)環(huán)境 IDLE :命令行 JAVA程序員: Eclipse + pydev C/C+程序員 visual studio + PTVS http:/microsoft.github.io

7、/PTVS/u科學計算相關開發(fā)包 Numpy 一個基于Python的數(shù)值計算包 基礎數(shù)據(jù)類型為多維數(shù)組 主要功能包括:l 數(shù)組創(chuàng)建(eye, ones, zeros )l 數(shù)組操作 (reshape, resize, split )l 數(shù)組元素檢索(all, any, nonzero, where )l 基本數(shù)值計算函數(shù) (sin, sum, sqrt )l 基本線性代數(shù)函數(shù)(dot, transpose, inv )l 基本統(tǒng)計學函數(shù)(cov, mean, var )u科學計算相關開發(fā)包 sciPy 一個基于numpy的專為科學計算與工程設計的開發(fā)包。 目前,它包含的主要子模塊有: l 聚類

8、算法l 快速傅里葉變換l 積分、常微分方程求解l 插值、擬合l 線性代數(shù)l 圖像處理l 信號處理l 最優(yōu)化,求根l 稀疏矩陣l 空間數(shù)據(jù)結構及算法l 正交距離回歸u科學計算相關開發(fā)包 openCV 著名開源圖像處理、計算機視覺函數(shù)庫的Python 版本。 matplotlib Python 2D繪圖領域使用最為廣泛的開發(fā)包。能使用戶很輕松地將數(shù)據(jù)圖形化。 其子模塊pylab具有與matlab相似的繪圖命令及相似的參數(shù)。u一個簡單的例子 對一張圖片作如下處理: 高斯濾波、銳化、求直方圖、求圖像頻譜u一個簡單的例子u學習資料推薦 1. The Python Tutorial /2/tutorial(英文) http:/ 2. Tentative Numpy Tutorial /Tentative_NumPy_Tutorial(英文) http:/ /20359201?utm_source=tuicool (翻譯)3. Scipy Tutorial /doc/scipy/reference/tutorial/4. Matplotlib http:/matplotlib.o

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論