Python學習筆記_第一章--數(shù)字與字符串 _5.變量

變量 I

Python 完全可以進行算術運算,但變量的使用使 Python 不僅僅是一個計算器。

我們將在這部分課程中學習關于變量的內(nèi)容。大家來看一看馬尼拉(菲律賓首都)的人口,我們將使用這些數(shù)據(jù)進行一些計算,而且將使用變量完成這些計算。使用變量(與使用原始數(shù)字進行計算正好相反)具有許多優(yōu)點,包括更有效地說明變換,我們將在后面體驗這一優(yōu)點。現(xiàn)在開始吧!

在 Python 中創(chuàng)建一個新變量很簡單;這里創(chuàng)建了一個表示馬尼拉人口的變量。

>>> manila_pop = 1780148

<img src="https://s3.cn-north-1.amazonaws.com.cn/u-img/41c32777-5403-4912-abcc-a9c9ea47e74c" width="621px" class="index--image--1wh9w">

<div class="ureact-markdown--markdown--3IhZa ureact-markdown "><p>此示例中的變量名為 <code>manila_pop</code>。等號 <code>=</code> 是賦值運算符。變量 <code>manila_pop</code> 的值為 1780148。</p>
</div>

賦值和打印變量

該賦值表達式的順序非常重要!應始終按照相同的順序,變量名 = 值。左側(cè)的變量名是右側(cè)表達式給出值的名稱。賦值運算符 = 將右側(cè)的值賦給左側(cè)的變量名。(注意,這與數(shù)學中的表達式不同,在數(shù)學表達式中x = y 等同于 y = x)

請注意,Python 中沒有某些語言中關于變量賦值的關鍵字,沒有必要指定變量的類型 —— 只需直接使用等號為變量賦值即可。

如果要訪問該值,僅需使用變量名。例如,可以將其打印到屏幕上:

>>> print(manila_pop)
1780148

我們在這節(jié)課中多次使用了 print 函數(shù)。當需要知道某個變量的值是什么時,print 也很方便 —— 只需要簡單地 print 該變量!如果沒有 print,Python 中發(fā)生的事情只會停留在 Python 內(nèi)部。大多數(shù)情況下,Python 程序中的大部分內(nèi)容都只是在內(nèi)部運行,數(shù)據(jù)只是被使用或傳遞,直到用戶需要看到某些結(jié)果的時候為止。print 有助于大家看到正在執(zhí)行的內(nèi)容,這對出現(xiàn)問題時的調(diào)試非常有用。

print 是 Python 的一個內(nèi)置函數(shù),大家將在后面遇到更多內(nèi)置函數(shù)。Python 中的函數(shù)調(diào)用始終帶有一對括號,如果有參數(shù),那么參數(shù)放在括號內(nèi)。 所以 print 函數(shù)的語法需要一對括號,將參數(shù)放在括號內(nèi)。如大家所見,如果在此放置一個變量,那么打印的結(jié)果就是該變量的值,而不是變量的名稱。

注意:在 Python 2 中打印時不需要使用括號,但是在 Python 3 中需要,所以請勿忘記括號!

>>> print manila_pop
File "<stdin>", line 1
print manila_pop \
^
SyntaxError: Missing parentheses in call to 'print'

出現(xiàn)了一個 SyntaxError(語法錯誤),這是關于錯誤原因的明確信息。犯類似這樣的錯誤會很常見,使用錯誤信息有助于改正錯誤。

名稱中出現(xiàn)了哪些錯誤?

我們一直在研究馬尼拉的人口,但是假如我們真的想了解人口密度,那么首先需創(chuàng)建一個作為計算結(jié)果的變量。

>>> manila_pop = 1780148
>>> manila_pop_density = manila_pop / manila_area
NameError: name 'manila_area' is not defined \

呃哦 —— 好像又出錯了。這里怎么了? 好吧,我試著除以變量 manila_area,但還沒有將其作為變量名并給它進行賦值,所以導致了一個 NameError。錯誤清楚地說明是名稱部分出現(xiàn)了問題。如果要使用變量名,則必須首先為其賦值!

我再試一次:

>>> manila_pop = 1780148
>>> manila_area = 16.56
>>> manila_pop_density = manila_pop/manila_area
>>> print(manila_pop_density)
107496.85990338166

這次沒有出現(xiàn) NameError,并且我們成功計算了馬尼拉的人口密度。馬尼拉地區(qū)的面積為 16.56 平方英里,人口密度是每平方英里的人口數(shù)。

給變量命名時,需要注意以下幾點:

有一些不能用于變量名的保留字,如 False 和 class,這些詞匯在 Python 中有重要的作用。保留字列表見此。嘗試為某個保留字賦值將出現(xiàn)一個 SyntaxError。

變量名中只能使用普通字母、數(shù)字和下劃線,且以字母或下劃線開頭。

雖然在變量名中使用任何內(nèi)置的標識符不會立即導致錯誤,但我們也不建議使用。例如,為 int 賦值時不會引發(fā)錯誤,但當你想要將某數(shù)字轉(zhuǎn)換成整數(shù)時,一定會出現(xiàn)問題。

>>> int = 7
>>> int(3.0)
TypeError: 'int' object is not callable

最好使用英文單詞的變量名,并盡可能地描述變量內(nèi)容。如果想要一個多詞變量名,請使用下劃線分隔單詞。例如 coconut_counter = 2。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。