- Python編程:從入門到實踐(第3版)
- (美)埃里克·馬瑟斯
- 1425字
- 2025-05-26 17:39:31
2.4 數
在編程中,經常使用數(number)來記錄得分,表示可視化數據,存儲信息,等等。Python 根據數的用法以不同的方式處理它們。鑒于整數使用起來最簡單,下面就先來看看 Python 是如何管理它們的。
2.4.1 整數
在 Python 中,可對整數(integer)執行加(+)減(-)乘(*)除(/)運算。
>>> 2 + 3 5 >>> 3 - 2 1 >>> 2 * 3 6 >>> 3 / 2 1.5
在終端會話中,Python 直接返回運算結果。Python 使用兩個乘號(**)表示乘方運算:
>>> 3 ** 2 9 >>> 3 ** 3 27 >>> 10 ** 6 1000000
Python 還支持運算順序,因此可以在同一個表達式中使用多種運算。還可以使用括號來調整運算順序,讓 Python 按你指定的順序執行運算,如下所示:
>>> 2 + 3*4 14 >>> (2 + 3) * 4 20
在這些示例中,空格不影響 Python 計算表達式的方式。它們旨在讓你在閱讀代碼時,能迅速確定將先執行哪些運算。
2.4.2 浮點數
Python 將帶小數點的數稱為浮點數(float)。大多數編程語言使用了這個術語,它指出了這樣一個事實:小數點可出現在數的任何位置上。每種編程語言都必須細心設計,以妥善地處理浮點數,確保不管小數點出現在什么位置上,數的運算都是正確的。
從很大程度上說,使用浮點數時無須考慮其行為。你只需輸入要使用的數,Python 通常會按你期望的方式處理它們:
>>> 0.1 + 0.1 0.2 >>> 0.2 + 0.2 0.4 >>> 2 * 0.1 0.2 >>> 2 * 0.2 0.4
需要注意的是,結果包含的小數位數可能是不確定的:
>>> 0.2 + 0.1 0.30000000000000004 >>> 3 * 0.1 0.30000000000000004
所有編程語言都存在這種問題,沒有什么可擔心的。Python 會盡力找到一種精確地表示結果的方式,但鑒于計算機內部表示數字的方式,這在有些情況下很難。就現在而言,暫時忽略多余的小數位數即可。在本書第二部分的項目中,你將在需要時學習處理多余小數位的方式。
2.4.3 整數和浮點數
將任意兩個數相除,結果總是浮點數,即便這兩個數都是整數且能整除:
>>> 4/2 2.0
在其他任何運算中,如果一個操作數是整數,另一個操作數是浮點數,結果也總是浮點數:
>>> 1 + 2.0 3.0 >>> 2 * 3.0 6.0 >>> 3.0 ** 2 9.0
在 Python 中,無論是哪種運算,只要有操作數是浮點數,默認得到的就總是浮點數,即便結果原本為整數。
2.4.4 數中的下劃線
在書寫很大的數時,可使用下劃線將其中的位分組,使其更清晰易讀:
>>> universe_age = 14_000_000_000
當你打印這種使用下劃線定義的數字時,Python 不會打印其中的下劃線:
>>> print(universe_age) 14000000000
這是因為在存儲這種數時,Python 會忽略其中的下劃線。在對數字位分組時,即便不是將每三位分成一組,也不會影響最終的值。在 Python 看來,1000 與 1_000 沒什么不同,1_000 與 10_00 也沒什么不同。這種表示法既適用于整數,也適用于浮點數。
2.4.5 同時給多個變量賦值
可在一行代碼中給多個變量賦值,這有助于縮短程序并提高其可讀性。這種做法最常用于將一系列數賦給一組變量。
例如,下面演示了如何將變量 x、y 和 z 都初始化為零:
>>> x, y, z = 0, 0, 0
在這樣做時,需要用逗號將變量名分開;對于要賦給變量的值,也需要做同樣的處理。Python 將按順序將每個值賦給對應的變量。只要變量數和值的個數相同,Python 就能正確地將變量和值關聯起來。
2.4.6 常量
常量(constant)是在程序的整個生命周期內都保持不變的變量。Python 沒有內置的常量類型,但 Python 程序員會使用全大寫字母來指出應將某個變量視為常量,其值應始終不變:
MAX_CONNECTIONS = 5000
在代碼中,要指出應將特定的變量視為常量,可將其變量名全大寫。
動手試一試
練習 2.9:數字 8 編寫 4 個表達式,分別使用加法、減法、乘法和除法運算,但結果都是數字 8。為了使用函數調用 print() 來顯示結果,務必將這些表達式用括號括起來。也就是說,你應該編寫 4 行類似于這樣的代碼:
print(5+3)
輸出應為 4 行,其中每行都只包含數字 8。
練習 2.10:最喜歡的數 用一個變量來表示你最喜歡的數,再使用這個變量創建一條消息,指出你最喜歡的數是什么,然后將這條消息打印出來。
- Python快樂編程:人工智能深度學習基礎
- Learning Docker
- 騰訊iOS測試實踐
- Game Programming Using Qt Beginner's Guide
- Oracle 12c中文版數據庫管理、應用與開發實踐教程 (清華電腦學堂)
- Mastering Yii
- 零基礎學Python數據分析(升級版)
- INSTANT Passbook App Development for iOS How-to
- PhoneGap:Beginner's Guide(Third Edition)
- Learning JavaScript Data Structures and Algorithms
- Spring Boot+Vue全棧開發實戰
- Spring+Spring MVC+MyBatis從零開始學
- Python 3 數據分析與機器學習實戰
- Oracle實用教程
- 鋁合金陽極氧化與表面處理技術(第三版)