今天在csdn上閑逛的時候,突然看見了一篇關於Python的文章,自己本來就有看看這門語言的想法,所以就寫了這些筆記,大家共勉。
Python可以從http://www.python.org/中進行下載,其中已經包括了一個IDE,Eclipse也可以用來編寫Python,不過沒有用過,如果誰有興趣的話,也可以去試一試。
在命令列的shell提示符下鍵入python,啟動解譯器。現在輸入print 'Hello World'
,然後按Enter鍵。你應該可以看到輸出的單詞Hello World。
對於Windows使用者,只要你正確的設定了PATH變數,你應該可以從命令列啟動解譯器。或者你可以選擇使用IDLE程式。IDLE是整合式開發環境的縮寫。點擊開始->程式->Python 。
關於IDE的選擇
在我們開始講述以源檔案方式編寫Python程式之前,我們需要一個編輯器來寫源檔案。挑選一個編輯器確實是極其重要的。你挑選一個編輯器就如同你挑選一輛你將購買的轎車一樣。一個好的編輯器會協助你方便地編寫Python程式,使你地編程旅程更加舒適,協助你更加快捷安全地到達目的地(實現目標)。
對於編輯器的基本要求之一是文法加亮功能,利用這一功能,你的Python程式的不同部分被標以不同的顏色,這樣你可以更好 看清楚 你的程式,使它的運行顯得形象化。
如果你使用Windows,那麼我建議你使用IDLE。IDLE具備文法加亮功能,還有許多其他的功能,比如允許你在IDLE中運行你的程式。特別值得注意的是:不要使用Notepad——它是一個糟糕的選擇,因為它沒有文法加亮功能,而且更加重要的是,它不支援文本縮排。而我們將會看到文本縮排對於我們來說極其重要。一個好的編輯器,比如IDLE(還有VIM)將會自動協助你做這些事情。
第一期主要說說Python的一些基本概念
(1)數
在Python中有4種類型的數——整數、長整數、浮點數和複數。
2
是一個整數的例子。
- 長整數不過是大一些的整數。
3.23
和52.3E-4
是浮點數的例子。E標記表示10的冪。在這裡,52.3E-4
表示52.3 * 10
-4。
(-5+4j)
和(2.3-4.6j)
是複數的例子。
(2)字串
字串是字元的序列。字串基本上就是一組單詞。
使用單引號(')
你可以用單引號指示字串,就如同'Quote me on this'
這樣。所有的空白,即空格和定位字元都照原樣保留。
使用雙引號(")
在雙引號中的字串與單引號中的字串的使用完全相同,例如"What's your name?"
。
使用三引號('''或""")
利用三引號,你可以指示一個多行的字串。你可以在三引號中自由的使用單引號和雙引號。例如:'''This is a multi-line string. This is the first line.<br />This is the second line.<br />"What's your name?," I asked.<br />He said "Bond, James Bond."<br />'''</p><p>
轉義符
假設你想要在一個字串中包含一個單引號('),那麼你該怎麼指示這個字串?例如,這個字串是What's your name?
。你肯定不會用'What's your name?'
來指示它,因為Python會弄不明白這個字串從何處開始,何處結束。所以,你需要指明單引號而不是字串的結尾。可以通過 轉義符 來完成這個任務。你用\'
來指示單引號——注意這個反斜線。現在你可以把字串表示為'What\'s your name?'
。
另一個表示這個特別的字串的方法是"What's your name?"
,即用雙引號。類似地,要在雙引號字串中使用雙引號本身的時候,也可以藉助於轉義符。另外,你可以用轉義符\\
來指示反斜線本身。
值得注意的一件事是,在一個字串中,行末的單獨一個反斜線表示字串在下一行繼續,而不是開始一個新的行。例如:
"This is the first sentence.\<br />This is the second sentence."
等價於"This is the first sentence. This is the second sentence."
自然字串
如果你想要指示某些不需要如轉義符那樣的特別處理的字串,那麼你需要指定一個自然字串。自然字串通過給字串加上首碼r
或R
來指定。例如r"Newlines are indicated by \n"
。
Unicode字串
Unicode是書寫國際文本的標準方法。如果你想要用你的母語如北印度語或阿拉伯語寫文本,那麼你需要有一個支援Unicode的編輯器。類似地,Python允許你處理Unicode文本——你只需要在字串前加上首碼u
或U
。例如,u"This is a Unicode string."
。
記住,在你處理文字檔的時候使用Unicode字串,特別是當你知道這個檔案含有用非英語的語言寫的文本。
字串是不可變的
這意味著一旦你創造了一個字串,你就不能再改變它了。
按字面意義級連字號串
如果你把兩個字串按字面意義相鄰放著,他們會被Python自動級連。例如,'What\'s' 'your name?'
會被自動轉為"What's your name?"
。
(3) 變數
在Python中變數d的定義與其他語言相識
(4)標示符的命名
標識符 是用來標識 某樣東西 的名字。在命名標識符的時候,你要遵循這些規則:
標識符的第一個字元必須是字母表中的字母(大寫或小寫)或者一個底線(‘ _ ’)。
標識符名稱的其他部分可以由字母(大寫或小寫)、底線(‘ _ ’)或數字(0-9)組成。
標識符名稱是對大小寫敏感的。例如,myname
和myName
不是一個標識符。注意前者中的小寫n和後者中的大寫N。
有效 標識符名稱的例子有i
、__my_name
、name_23
和a1b2_c3
。
無效 標識符名稱的例子有2things
、this is spaced out
和my-name
。
(5)對象
Python把在程式中用到的任何東西都稱為 對象 。這是從廣義上說的。因此我們不會說“某某東西”,我們說“某個對象 ”。
需要注意一點:使用變數時只需要給它們賦一個值。不需要聲明或定義資料類型。
(6)邏輯行與物理行
物理行是你在編寫程式時所看見的。邏輯行是Python看見的單個語句。Python假定每個物理行對應一個 邏輯行 。
邏輯行的例子如print 'Hello World'
這樣的語句——如果它本身就是一行(就像你在編輯器中看到的那樣),那麼它也是一個物理行。
預設地,Python希望每行都只使用一個語句,這樣使得代碼更加易讀。
如果你想要在一個物理行中使用多於一個邏輯行,那麼你需要使用分號(;)來特別地標明這種用法。分號表示一個邏輯行/語句的結束。
(1)<br />i = 5<br />print i </p><p>(2)<br />i = 5;<br />print i; </p><p>(3)<br />i = 5; print i; </p><p>(4)<br />i = 5; print i;</p><p>
以上四種寫法相同。
有時候,有一種暗示的假設,可以使你不需要使用反斜線。這種情況出現在邏輯行中使用了圓括弧、方括弧或波形括弧的時候。這被稱為暗示的行串連。你會在後面介紹如何使用列表的章節中看到這種用法。
(7)縮排
空白在Python中是重要的。事實上行首的空白是重要的。它稱為縮排。在邏輯行首的空白(空格和定位字元)用來決定邏輯行的縮排層次,從而用來決定語句的分組。
這意味著同一層次的語句必須有相同的縮排。每一組這樣的語句稱為一個塊。
錯誤的縮排會引發錯誤。例如:
i = 5<br /> print 'Value is', i # Error! Notice a single space at the start of the line<br />print 'I repeat, the value is', i </p><p>
不要混合使用定位字元和空格來縮排,因為這在跨越不同的平台的時候,無法正常工作。我強烈建議你在每個縮排層次使用單個定位字元或兩個或四個空格。
選擇這三種縮排風格之一。更加重要的是,選擇一種風格,然後一貫地使用它,即只使用這一種風格。