Python編程入門的一些基本知識
這篇文章主要介紹了Python編程入門的一些基本知識,包括注釋需和Shell命令使用等基本內容,要的朋友可以參考下
Python與Perl,C和Java語言等有許多相似之處。不過,也有語言之間有一些明確的區別。本章的目的是讓你迅速學習Python的文法。
第一個Python程式:
互動模式編程:
調用解譯器不經過指令檔作為參數,顯示以下提示:
?
1 2 3 4 5 |
$ python Python 2.6.4 (#1, Nov 11 2014, 13:34:43) [GCC 4.1.2 20120704 (Red Hat 5.6.2-48)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> |
鍵入下列文字在Python提示符,然後按Enter鍵:
?
1 |
>>> print "Hello, Python!"; |
如果您啟動並執行是新的Python版本,那麼需要使用列印語句括弧像print ("Hello, Python!");。但是在Python版本2.6.4,這將產生以下結果:
?
指令碼模式編程:
調用解譯器及指令碼作為參數,並開始執行的指令碼,並一直持續到指令碼完成。當指令碼完成時,解譯器不再是活動的。
讓我們在指令碼中編寫一個簡單的Python程式。所有的Python檔案將具有.py擴充。所以,把下面的代碼寫在一個test.py檔案。
?
1 |
print "Hello, Python!"; |
在這裡,我假設你已經在PATH變數中設定Python解譯器。現在,嘗試如下運行這個程式:
?
這將產生以下結果:
?
讓我們嘗試另一種方式來執行Python指令碼。下面是修改後的test.py檔案:
?
1 2 3 |
#!/usr/bin/python print "Hello, Python!"; |
在這裡,假設Python解譯器在/usr/bin目錄中可用。現在,嘗試如下運行這個程式:
?
1 2 |
$ chmod +x test.py # This is to make file executable $./test.py |
這將產生以下結果:
?
Python標識符:
Python標識符是用來標識一個變數,函數,類,模組或其他對象的名稱。一個標識符開始以字母A到Z或a?z或後跟零個或多個字母底線(_),底線和數字(0?9)。
Python中標識符內不允許標點符號,如@,$和%。 Python是一種區分大小寫程式設計語言。因此,Manpower 和manpower在Python中是兩個不同的標識符。
這裡有Python標識符命名規範:
類名以大寫字母以及所有其它標識符以小寫字母。
開頭單個前置底線的標識符表示由該標識符約定意思是私人的。
開頭兩個前置底線的標識符表示一個強烈的私人的標識符。
如果標識符末尾還具有兩個底線結束時,該標識符是一個語言定義的特殊名稱。
保留字:
下面列出了在Python中的保留字。這些保留字不可以被用作常量或變數,或任何其它標識符。所有Python關鍵字只包含小寫字母。
行和縮排:
一個程式員學習Python時,遇到的第一個需要注意的地方是,不使用括弧來表示代碼的類和函數定義塊或流程式控制制。代碼塊是由行縮排,這是嚴格執行表示方式。
在縮排位的數目是可變的,但是在塊中的所有語句必須縮排相同的量。在這個例子中,兩個功能塊都很好使用:
?
1 2 3 4 |
if True: print "True" else: print "False" |
然而,在本實施例中的第二塊將產生一個錯誤:
?
1 2 3 4 5 6 |
if True: print "Answer" print "True" else: print "Answer" print "False" |
因此,在Python中所有的連續線縮排的空格數同樣的會結成塊。以下是各種語句塊中的例子:
注意:不要試圖理解所使用的邏輯或不同的功能。只要確定你明白,即使他們各種模組無需括弧。
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#!/usr/bin/python import sys try: # open file stream file = open(file_name, "w") except IOError: print "There was an error writing to", file_name sys.exit() print "Enter '", file_finish, print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: # close the file file.close break file.write(file_text) file.write("n") file.close() file_name = raw_input("Enter filename: ") if len(file_name) == 0: print "Next time please enter something" sys.exit() try: file = open(file_name, "r") except IOError: print "There was an error reading file" sys.exit() file_text = file.read() file.close() print file_text |
多行語句:
Python語句通常用一個新行結束。 但是,Python允許使用續行字元()來表示,該行應該繼續下去(跨行)。例如:
?
1 2 3 |
total = item_one + item_two + item_three |
包含在[],{}或()括弧內的陳述並不需要使用續行符。例如:
?
1 2 |
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'] |
Python引號:
Python接受單引號('),雙引號(“)和三(''或”“”)引用,以表示字串常量,只要是同一類型的引號開始和結束的字串。
三重引號可以用於跨越多個行的字串。例如,所有下列是合法的:
?
1 2 3 4 |
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences.""" |
Python注釋:
一個井號(#),這不是一個字串文字開頭的注釋。“#”號之後字元和到物理行是注釋的一部分,Python解譯器會忽略它們。
?
1 2 3 4 |
#!/usr/bin/python # First comment print "Hello, Python!"; # second comment |
這將產生以下結果:
?
注釋可能會在聲明中表達或同一行之後:
?
1 |
name = "Madisetti" # This is again comment |
你可以使用多行注釋如下:
?
1 2 3 4 |
# This is a comment. # This is a comment, too. # This is a comment, too. # I said that already. |
使用空行:
一行只含有空格,可能帶有注釋,如果是空行那麼Python完全忽略它。
在互動式解譯器會話中,必須輸入一個空的物理行終止多行語句。
等待使用者:
程式的下面一行顯示的提示,按斷行符號鍵退出,等待使用者按下斷行符號鍵:
?
1 2 3 |
#!/usr/bin/python raw_input("nnPress the enter key to exit.") |
在這裡,“nn已”被用來顯示實際行之前建立兩個換行。一旦使用者按下鍵時,程式結束。這是一個很好的技巧,保持一個控制台視窗開啟,直到使用者完成應用程式運行。
在一行中多個語句:
分號( ; ) 允許在單行寫入多條語句,不管語句是否啟動一個新的代碼塊。下面是使用分號樣本:
?
1 |
import sys; x = 'foo'; sys.stdout.write(x + 'n') |
多個語句組作為套件:
一組單獨的語句,在Python單一的代碼塊被稱為序列。複雜的語句,如if, while, def, and class,那些需要一個標題列和套件。
標題列開始的聲明(與關鍵字),並終止與冒號(:)),接著是一個或多個線構成該套件。例如:
?
1 2 3 4 5 6 |
if expression : suite elif expression : suite else : suite |
命令列參數:
我們可能已經看到了,比如,很多程式可以運行,它們提供有關如何啟動並執行一些基本資料。 Python中可以使用 -h 做到這一點:
?
1 2 3 4 5 6 7 8 9 |
$ python -h usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... Options and arguments (and corresponding environment variables): -c cmd : program passed in as string (terminates option list) -d : debug output from parser (also PYTHONDEBUG=x) -E : ignore environment variables (such as PYTHONPATH) -h : print this help message and exit [ etc. ] |
您也可以設定您的指令碼,它應該以這樣的方式接受各種選項。 命令列參數是一個進階主題並在以後學習,當您通過其它的Python概念後。