Python Tutorial 實踐(2)

今天抽空把Turorial的第3章瀏覽了一下,這裏也講一下本章讓我印象比較深入的或者通常咱們不太注意的地方程序員

本章介紹了Python的一些數據類型,須要注意的是,Python支持複數類型。這裏給出其中的幾個例子,相信你們一看就明白了。小程序

>>> 1j * 1J
(-1+0j)
>>> 1j * complex(0,1)
(-1+0j)
>>> 3+1j*3
(3+3j)
>>> (3+1j)*3
(9+3j)
>>> (1+2j)/(1+1j)
(1.5+0.5j)

這裏作一些簡單說明。能夠看到Python中對複數的表示形式和數學上基本相同,j或J均可以表示虛數部分的單位。經過complex(實數部分,虛數部分),也能夠表示一個複數。再來看一個例子:spa

>>> a=1.5+0.5j
>>> a.real
1.5
>>> a.imag
0.5

Python中也提供了求複數模的方法:翻譯

>>> a=3.0+4.0j
>>> abs(a)  # sqrt(a.real**2 + a.imag**2)
5.0

接下來是介紹有關字符串的相關信息,這裏就不對此做詳細說明了,給你們幾個關鍵詞,不明白的話能夠仔細研究一下:三引號、轉義字符、字符的索引和Unicode字符串。code

接下來的Tutorial中介紹了Python中一個常常使用的數據類型「List」,直接看例子:索引

>>> a = ['spam', 'eggs', 100, 1234]
>>> a
['spam', 'eggs', 100, 1234]
>>> a[0]
'spam'
>>> a[-2]
100
>>> a[:2] + ['bacon', 2*2]
['spam', 'eggs', 'bacon', 4]
>>> 3*a[:3] + ['Boo!']
['spam', 'eggs', 100, 'spam', 'eggs', 100, 'spam', 'eggs', 100, 'Boo!']

List是長度可變的,相信經過上面的例子你已經可以感覺到,若是你對那些索引有所疑問(好比a[:2]其實是返回前兩個元素,而不是從0~2三個元素),那麼你要好好理解一下這些索引的使用方法。字符串

介紹完List後,Tutorial終於開始讓咱們編寫第一個小程序——斐波那契數列數學

>>> a, b = 0, 1
>>> while b < 10:
...          print b
...          a, b = b, a+b
...

1 1 2 3 5 8List

能夠看到Python不用大括號來指示代碼塊,而是嚴格用縮進的方式來控制,這對於有良好代碼風格的程序員來講是很是棒的。技巧

Tutorial中還詳細介紹了這個程序中涉及到的一些語法點,這裏不作詳細介紹(太詳細的話就變成全文翻譯了,雖然我對翻譯也有興趣,可是這裏不是發揮的地方)。

不過這裏能夠將本章最後提到的那個小技巧說一下。咱們注意到剛纔按個程序中print的輸出是自動換行的,那麼如何能讓print不自動換行,即緊接着上一次輸出後繼續輸出呢?一個逗號便可解決:

>>> a, b = 0, 1
>>> while b < 1000:
...         print b,
...         a, b = b, a+b
...
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987

這就是第3章大致上的內容,到這裏,應該對Python有個比較基本的認識了,也歡迎你們留言討論相關的內容。

【待續】

相關文章
相關標籤/搜索