最近開始學Python,這是一個很強大和便捷的編程語言,日後進行科學計算和科研的時候必然成為主要的編程語言。
本來買了一本Python基礎教程(第2版),然而教學順序不太喜歡,因為一開始並沒有講清楚語法,不能學了立馬用到實驗中。並且,這本書針對的是沒有編程基礎的人,講的比較淺。
Python基礎教程(第2版)高清晰PDF+源代碼 下載 http://www.linuxidc.com/Linux/2016-08/134336.htm
在這裡把python中特有的,以及和C不同的地方記下來。
在python中,有4種數據類型——整數(int)、長整數(long)、浮點數(float)和復數(complex)。
(-5+4j)和(2.3-4.6j)是復數的例子。
這裡居然有復數,果然比C要方便計算,在C中通常需要自己定義復數類型。
上面的4中數據類型可以互相轉換,還可以轉換為字符串類型(str)如:
>>> a=12343434
>>> long(a)
12343434L
>>> str(a)
'12343434'
>>> float(a)
12343434.0
complex(a)
(12343434+0j)
可以用單引號和雙引號來表示中間為字符串,兩者並沒有什麼差別。當字符串裡有引號或者多行時,可以用三引號括起來(”’或者”“”)表示。
在C++中,使用單引號表示char,用雙引號表示String。
在字符中,若要表示斜槓\,需要使用\,其他特殊符號也是,例如用\’ 表示引號(若沒有使用三引號)。程序中可以使用 \ 表示兩行是連在一起的,例如
s = 'This is a string. \
This continues the string.'
print s
輸出:
This is a string. This continues the string.
如果你想要指示某些不需要如轉義符那樣的特別處理的字符串,那麼你需要指定一個自然字符串。自然字符串通過給字符串加上前綴r或R來指定。例如r”Newlines are indicated by \n”。
Unicode是書寫國際文本的標准方法。如果你想要用中文或者其他非英文文本,那麼你需要有一個支持Unicode的編輯器。類似地,Python允許你處理Unicode文本——你只需要在字符串前加上前綴u或U。例如,u”This is a Unicode string.”。
記住,在你處理文本文件的時候使用Unicode字符串,特別是當你知道這個文件含有用非英語的語言寫的文本。
這意味著一旦你創造了一個字符串,你就不能再改變它了。雖然這看起來像是一件壞事,但實際上它不是。若要對一個字符進行修改,其實也可以用原來的名字進行賦值,例如:
>>> s='abc'
>>> s=s[:2]
>>> print s
ab
標識符的第一個字符必須是字母表中的字母(大寫或小寫)或者一個下劃線(‘ _ ’)。
標識符名稱的其他部分可以由字母(大寫或小寫)、下劃線(‘ _ ’)或數字(0-9)組成。
無效 標識符名稱的例子有2things、this is spaced out和my-name。
使用變量時只需要給它們賦一個值。不需要聲明或定義數據類型。
空白在Python中是重要的。事實上行首的空白是重要的。它稱為縮進。在邏輯行首的空白(空格和制表符)用來決定邏輯行的縮進層次,從而用來決定語句的分組。
這意味著同一層次的語句必須有相同的縮進。每一組這樣的語句稱為一個塊。
不要混用空格和tab,要是用tab就全部用tab,若用4個空格或2個空格則一直用空格。一個tab和4個空格是不一樣的,即使看起來位置一樣!
我把值得注意的,和C不一樣的列出來:
下面這個表給出Python的運算符優先級,從最低的優先級(最松散地結合)到最高的優先級(最緊密地結合)。這意味著在一個表達式中,Python會首先計算表中較下面的運算符,然後在計算列在表上部的運算符
運算符通常由左向右結合,即具有相同優先級的運算符按照從左向右的順序計算。如果我們想要改變它們的計算順序,得使用圓括號。