前言 科學計算與 Python 的介紹¶

介紹科學計算的理念、Python 的角色,以及 SymPy 為何在現代數學教育中扮演重要角色。

用 Python 與 SymPy 做數學和科學計算¶

當你在學數學時,面對繁複的方程式求解計算時,是否曾經想過:「電腦是否可以做這些代數運算?」

Python 是一種語法簡單、容易上手、又在世界各地廣泛使用的程式語言。即使你從來沒有寫過程式,也能在短時間內學會基本用法。而 SymPy 則是 Python 中專門用來做「符號運算」的數學工具——它不只會算數字,還能「看懂」代數式,就像你在紙上計算一樣。

用 SymPy,你可以:

  • 化簡代數式:自動整理複雜的多項式與分式
  • 解方程式與聯立方程:一次就得到正確解
  • 處理函數、極限、微分:清楚看到每一步的數學意義
  • 驗證你的答案:讓電腦幫你檢查計算是否正確

這些內容,正是高中數學的核心。

不只是「算更快」,而是「想得更清楚」¶

學會使用 SymPy,並不是要你偷懶不寫計算,而是幫助你把重複、耗時的計算交給電腦,讓你能把精力放在理解數學概念上。當你改變條件、修改題目時,只要改幾行程式,就能立刻看到結果,這會讓你更容易發現規律、建立直覺。

你會發現,數學不再只是「一步一步照公式算」,而是一個可以探索、實驗、驗證的過程。

為未來打下基礎¶

不論你將來是否走向理工、資訊、商業或其他領域,用程式表達想法、用工具輔助思考,都會是一項非常重要的能力。透過 SymPy,你在學高中數學的同時,也自然地培養了程式思維,為大學甚至未來的學習做好準備。

本書會帶你做什麼?¶

本書將從你熟悉的高中數學出發,搭配清楚的 Python 程式範例,帶你一步步學會如何用 SymPy:

  • 把課本上的數學問題「交給電腦算」
  • 看懂程式背後對應的數學概念
  • 自己動手實驗、修改、探索更多可能性

不需要高深的電腦背景,只需要一點好奇心。

希望這本書能讓你發現: 數學不只是考試科目,也可以是一件有趣、強大、而且現代化的工具。

先睹為快,幾個範例¶

我們可以上 Google Colab 雲端,試著執行第一個 Python 程式。

如果您是新手,可以參考這個 Youtube 教學短片:如何在 Google Colab 執行 Python 程式。

例 1:讓電腦代我們展開多項式

In [1]:
import sympy as sp
sp.init_printing()
In [2]:
x = sp.symbols('x')
sp.expand((x+1)**5)
Out[2]:
$\displaystyle x^{5} + 5 x^{4} + 10 x^{3} + 10 x^{2} + 5 x + 1$

例 2:可視化與極限直觀 利用 SymPy 分析極限行為。

In [3]:
sp.limit(sp.sin(x)/x, x, 0)
Out[3]:
$\displaystyle 1$

例 3:自動微分 SymPy 可直接微分任意可微函數。

In [4]:
sp.diff(sp.exp(x)*sp.sin(x), x)
Out[4]:
$\displaystyle e^{x} \sin{\left(x \right)} + e^{x} \cos{\left(x \right)}$

用電腦做代數運算,很方便又很簡潔呢!


在電腦上安裝 Python 和 JupyterLab 的方法¶

如果您想要在自己的電腦上安裝 Python 程式和 JupyterLab 筆記本,可以參考以下步驟:

這裡介紹從 Conda 安裝的方法。Conda 環境在電腦上提供了獨立的作業環境,程式穩定且相依性高,可以安裝在 Windows, macOS, 或 Linux 作業系統。

方法一:安裝完整的 Anaconda

Anaconda 是較完整的套件,也使用的硬碟容量較大,更新時也較花時間。可以到 Anaconda 官網 依電腦作業系統下載安裝檔案,一鍵式安裝。對初學者而言較容易。安裝好之後,Windows 使用者,啟動 Anaconda Prompt,也就是 conda 環境的指令視窗,而 macOS 和 Linux 的使用者,則可開啟終端機,輸人指令以啟動 JupyterLab:

(base) $ jupyter lab

JupyterLab 是一個以電腦本地網頁界面執行的程式,會在瀏覽器開啟。此時開啟新的 Notebook,就可以在筆記本中,輸入 Python 程式或是文字區塊。要退出 JupyterLab,請選 [File] -> [Shut Down]。

方法二:從 Miniconda 安裝 JupyterLab

Miniconda 可視為 Anaconda 的輕便版,使用者可以安裝 Miniconda 後,再依個人需要,安裝需要的套件。以下介紹如何安裝 Miniconda 和 Python 相關套件。

在 Windows 系統安裝

  1. 進入 https://conda.io/ 網站。
  2. 下載 Windows 版本的 Miniconda 安裝檔案。
  3. 執行此安裝檔。
  4. 安裝完成後,打開 Anaconda Prompt 這個 conda 指令視窗。
  5. 輸入以下 2 個指令,以指定安裝路徑,確保安裝的套件會是穩定的版本:
(base) $ conda config --add channels conda-forge
(base) $ conda config --set channel_priority strict

此外,需要接受幾個條款,輸入以下 3 個指令:

(base) $ conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main
(base) $ conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r
(base) $ conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/msys2
  1. 安裝 JupyterLab 套件和其它需要的套件

建議先建立獨立的環境來安裝套件,以確保日後更新時,維持各程式的相容性。例如,輸入指令建立一個名叫 jlab 的環境,這個名字是自訂的,您也可以取自己喜歡的名字。這裡我們指定安裝的 python 版本是 3.13:

(base) $ conda create -y -n jlab python=3.13

安裝好後,輸入以下指令以進入 jlab 環境。

(base) $ conda activate jlab

進入後,在此環境下安裝 jupyterlab,和常用套件 sympy, numpy, scipy, pandas, matplotlib。

(jlab) $ conda install -y jupyterlab sympy numpy scipy pandas matplotlib

安裝好後,輸入以下指令以啟動 JupyterLab:

(jlab) $ jupyter lab

在 macOS 系統安裝

  1. 進入 https://conda.io/ 網站。
  2. 下載適用於 macOS 的安裝檔。
  3. 打開終端機,輸入類似以下指令:
$ bash $HOME/Downloads/Miniconda3-latest-MacOSX-arm64.sh

之後指令如前述。

在 Linux 的安裝

以 Ubuntu Linux 系統為例,

  1. 進入 https://conda.io/ 網站。
  2. 下載適用於 Linux 的安裝檔。
  3. 打開終端機,輸入類似以下指令:
$ bash Miniconda3-latest-Linux-x86_64.sh

在 Ubuntu Linux 實測顯示,先安裝 mamba,再用 mamba 來安裝套件,會快速且順利得多。

若終端機還沒有進入 conda 的 base 環境,可以輸入:

$ conda activate base

接著輸入以下指令:

(base) $ conda install -n base -c conda-forge mamba
(base) $ conda create -n jlab python=3.13
(base) $ conda activate jlab
(jlab) $ mamba install -c conda-forge jupyterlab sympy numpy scipy pandas matplotlib

輸入以下指令以啟動 JupyterLab:

(jlab) $ jupyter lab

瀏覽器會啟動,就可以開始使用 JupyterLab 筆記本了。

附帶說明

若在終端機裡,要退出 conda 環境,可以輸入

$ conda deactivate

就會回到作業系統原本的一般指令環境。


正式啟程¶

無論您選擇使用雲端的 Google Colab,或是在自己的電腦上使用 JupyterLab 記事本,都可以順利地執行這本書介紹的程式碼。

讓我們起身,一起探索使用 Python 來計算數學的旅程吧!

回首頁