- Python物理建模初學者指南(第2版)
- (美)杰西·M.金德 (美)菲利普·納爾遜
- 1339字
- 2025-05-19 16:00:19
1.2 啟動Python
不要只是閱讀輸入某個命令時會發生什么,而是要親自嘗試這些命令。附錄A描述了如何安裝和啟動Python。從現在開始,你應該讓Python處于運行狀態,在閱讀的同時,嘗試每一段代碼并觀察Python的響應。例如,本書不會向你展示太多的圖形或輸出。你必須在閱讀示例時自己生成這些圖形或輸出。
閱讀本書并不能讓你學會Python。你需要學習這里的所有示例和練習,然后將所學知識用于解決自己的問題,才能學會Python。
請給自己設定一些小挑戰(如果……會發生什么?我怎樣才能完成……?),然后不斷測試。Python不是昂貴的實驗室設備,不會因為輸入錯誤的內容而損壞或爆炸!請大膽嘗試。這種策略不但比被動積累事實更有趣,而且效果也要好得多。
在你開始輸入代碼之前,我們需要先解釋一下本書中使用的一些約定。其中最重要的約定如下:
Python代碼完全由純文本組成。
本書代碼示例中的所有字體、字型等都是為了便于閱讀而添加的。在輸入代碼時,你不需要擔心這些事情。類似地,代碼示例左側顯示的行號可以方便我們快速找到特定的行。不要輸入行號。當你在編輯器中工作時,Spyder將分配并顯示行號,Python將使用行號來告訴你哪里出現了錯誤。行號不是代碼的一部分。另外,還要注意,大多數空格是可有可無的,但用于縮進的空格是不可或缺的。我們使用額外的空格來提高可讀性,但這些并不是必需的。
本書在顯示代碼時使用以下字體方案:
● 注釋以斜體顯示:#
這是一條注釋。
● 函數參數中的鍵值以斜體顯示:np.loadtxt('data.csv',
delimiter=',')
。鍵值不能隨意指定,鍵值必須正確拼寫。
● 可以用鼠標單擊的按鈕以小型大寫字母顯示在矩形中:。Spyder中有些按鈕是圖標,不是文本,但將鼠標指針懸停在按鈕上時將顯示本書中所示的文本。
● 按鍵顯示在尖括號內:<Return>
或<Ctrl-C>
。
● 其他大多數文本不以特殊格式顯示。
我們的按鍵符號可能與你的鍵盤不完全相同,因此我們對相關的約定進行了匯總,如表1.1所示。尖括號中出現的所有鍵應同時按下。例如,<Ctrl-C>
表示按住鍵盤上的“control”鍵,并同時按住“C”鍵。我們的約定遵循macOS鍵盤布局。如果你使用的是Windows或Linux,請用<Ctrl>
替代<Cmd>
。另外,我們將“return或enter”簡寫
為<Return>
。
表1.1 按鍵符號

你已經知道了要輸入什么(純文本)以及如何輸入,現在萬事俱備,只差Python!完整的Python編程環境有許多組件。表1.2簡要說明了我們將要用到的組件。請注意,在本指南中,“Python”一詞的使用比較自由。Python除了指語言本身,還可以指Python解釋器(一種計算機應用程序,可以接受命令并執行程序中描述的步驟)。另外,Python還可以同時指Python語言和公共庫。
表1.2 本書中Python環境的組成

本書中的大部分代碼可以在任何Python發行版中運行。然而,因為無法為每個可用的Python版本和每個集成開發環境(Integrated Development Environment, IDE)提供說明,所以我們選擇了以下特定設置。
● Python 3的Anaconda發行版,可在其官方網站獲得。許多科學家仍然使用早期版本的Python(如2.7版)。附錄E討論了如何將本書中的代碼進行微小更改,以適應早期版本。
● Spyder IDE是Anaconda附帶的,也可以在其官方網站獲得。任何編程任務都可以使用不同的IDE來完成,或者根本不使用IDE來完成。其他IDE也是可用的,例如IDLE,它附帶了Python的各個發行版。另外,還可以選擇基于瀏覽器的Jupyter Notebook和JupyterLab。
發行版的選擇取決于個人偏好。我們選擇Anaconda是因為它安裝、更新和維護都很簡單,而且免費。你可能會發現,其他的發行版更適合你的需求。例如,你可以從Python網站安裝Python并使用pip管理包,但本書假設你使用的是Anaconda和conda包管理器。
- Android Application Development Cookbook(Second Edition)
- Drupal 8 Module Development
- Mastering JBoss Enterprise Application Platform 7
- Learning PHP 7
- Learning Continuous Integration with TeamCity
- Procedural Content Generation for C++ Game Development
- MATLAB GUI純代碼編寫從入門到實戰
- Arduino可穿戴設備開發
- 計算機應用技能實訓教程
- jQuery技術內幕:深入解析jQuery架構設計與實現原理
- Java程序設計教程
- 一步一步學Spring Boot:微服務項目實戰(第2版)
- Serverless工程實踐:從入門到進階
- Visual Basic程序設計
- Python自動化開發實戰