python入門(三)——類型介紹,熟悉交互式環境

說了那麼多其他的東西,終於開始將python語法了。這一節開始講python的基本類型。

這一節的內容,我們在cmd下交互式進行。交互式對於涉及到的python語法格式問題不多,語法格式就放到下一節。

一個程序,需要一些變量來記錄數據,這些變量應該有特定的類型。因爲,顯然我們可以對一個數字做乘方,但是對一個字符串做乘方就沒有意義了。變量類型決定了一個變量具有哪些性質,能夠進行怎樣的運算,所以瞭解基本的變量類型至關重要。

關於變量的名字,一般使用英文字符和數字,比如score = 100,name = "Alice",a1, a2 = 1, 2。詳細的規定後面再說。

內置類型

數字

數字分爲整數和浮點數,他們之間的相互轉化很自然,運算也很類似。此外,python還內置了複數,直接使用a = 2.3 + 1.2j就可以。

整數(int)

整數的字面量可以是十進制,十六進制,或者八進制,比如

>>> 34       # 十進制
34
>>> 0x34     # 十六進制
52
>>> 0o34     # 八進制
28

後面兩種進制,在一些特殊的情況下有一些好的用法,畢竟計算機是二進制,和2的次方的進制更接近。

變量賦值使用=符號,比如

>>> score = 100
>>> score + 12
112

賦值是把右邊的值100賦給左邊的名叫score的變量,第二句話用score來運算,結果就是100 + 12,那就是112

數的運算基本的當然是四則運算以及冪運算,分別舉例如下:

>>> 2 + 3
5
>>> 2 - 3
-1
>>> -3 * -4
12
>>> 5 / 6
0.8333333333333334
>>> 2 ** 4
16

這些符號和我們數學的符號還是很像的,應該沒有什麼問題。初學者最好自己敲敲鍵盤試一試。值得注意的一點是,整數除法得到的是小數,如果需要計算帶餘除法,就使用運算符//。比如

>>> 15 // 6
2

以及取模運算,用運算符%

>>> 15 % 6
3

上述這些式子也可以組合起來,一般來說,其運算順序都和我們小學學過的一樣,比如乘除法優先於加減法,冪運算優先於乘除法。當然,也可以用括號,這樣括號內始終最優先。舉幾個例子

>>> 3 + 3 * 4
15
>>> (4-2) * (3**5)
486
>>> s = 1 + 3 + (6 % 4) * 100
>>> (s // 12) ** 2
289
實數(float)

實數的字面量一般有下面幾種

>>> 1.0
1.0
>>> 2.
2.0
>>> 0.3
0.3
>>> .4
0.4
>>> 5e6
5000000.0
>>> 7e-2
0.07
>>> -12.5E-12
-1.25e-11

程序中整數和實數是不同的,爲了區分,1.0必須寫出小數點。其中e後面接一個整數,表示乘以10的幾次方,就是科學計數法的意思。e的大小寫沒有關係。關於相關的預算,和整數差不多,就不再舉例,請自己嘗試。

複數(complex)

複數也很簡單,字面量一般是

>>> 1 + 2j
(1+2j)

也可以直接用運算符運算,更詳細的以後展開。

實際上,交互式的python就可以用作一個計算器使用了,而且你還可以用變量來記錄某一次的運算結果,下次再用,非常方便。

字符串(str)

你現在看到的這一串文字,是如何被計算機處理的呢?這就需要一種被稱爲字符串的類型。下面展示一些基本的字符操作。

>>> s = "張"
>>> s + '小明'
'張小明'
>>> s * 3
'張張張'

其中,雙引號和單引號沒有什麼區別。

列表(list)

有的時候,我們需要處理的不是一個數據,而是一組數據,比如一個班學生的成績,這個時候,我們就會列一個表。python也給我們內置了列表這種類型,列表的一些操作如下

>>> li = [56, 70, 100, 89]
>>> li
[56, 70, 100, 89]
>>> li[0]
56
>>> li[1]
70
>>> li[-1]
89
>>> li + [72, 34]
[56, 70, 100, 89, 72, 34]
>>> len(li)                # 求長度
4

計算機中,索引常常從0開始,所以li[1]是第二個數據,python中li[-1]表示最後一個數據,兩個列表還可以相加成一個列表。實際上,字符串也是一系列字符組成的列表。雖然python中沒有字符的概念,實際上python認爲字符實際上就是長度爲1的字符串。

>>> name = 'Alice'
>>> name[3]
'c'
>>> len(name[0])
1

列表中的元素可以是多樣化的,比如

>>> studentA = ['小明', '92', '2003/02/30']

元組(tuple)

>>> t = (1, 34, "hello", [1,2])

和列表一樣,都是線性的元素集合,除了初始化的符號不一樣之外,列表的元素是可以改變的,而元組是不能的,比如

>>> li = [1, 34, "hello", [1,2]]
>>> li[0] = 100
>>> li
[100, 34, 'hello', [1, 2]]
>>> t = (1, 34, "hello", [1,2])
>>> t[0] = 100
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

改變列表是可以的,但是企圖改變元組會報錯。元組和列表各有用處,在一些情況下,需要仔細選擇用哪一個。

字典(dict)

字典的意思就是,用一個詞來查相關的信息。查字典的字,就會得到關於這個字的相關信息。並且,我們查字典是比較快的,不會從頭開始一頁一頁翻。舉個字典的例子

>>> a = {"name": "Alice", "score" : 100, "GPA": 4.0}
>>> a['GPA']
4.0
>>> a['name'] = '小明'
>>> a
{'name': '小明', 'score': 100, 'GPA': 4.0}

這個例子中,我們創建了一個字典,然後查字典的GPA關鍵字,得到GPA的相關結果是4.0,我們還可以該name關鍵字對應的內容。這是一個非常有用的類型。

總結

我們再交互式環境下,學習了關於類型的基礎知識。這些類型的相關操作,還需要詳細展開,本節只是一個介紹,希望讀者對這些類型有一個印象,並且能夠熟悉一下交互式環境。希望你能夠學會把交互式環境作爲計算器來使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章