歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Python 編程快速上手

2012 下半年, 想學一種新的編程語言嗎? 選擇 Python 吧!

學習一門新語言, 有兩種思路: 1. 將原來所學清空,懷空杯心態, 以免受原有語言思路的影響。畢竟,語言會塑造人的思維。 2. 將新語言與原有語言關聯對比, 從而在最快時間內能夠掌握基礎知識,編寫出有用的程序。一般這種情況下,是項目需求所致。 

學習Python 有如下理由: 1.  表達能力強大, 不遜於C,C++,JAVA這些主編程語言 這是必要條件; 2.  它是類腳本語言, 這意味著簡化了程序的編寫, 用更少的代碼完成用主編程語言可能語法繁瑣的各種任務; 3.  格式嚴謹, 有利於代碼風格的訓練和軟件代碼的可讀性,項目代碼的管理;  4.  庫、框架多,可以快速建立應用。  有此四條足矣,趕緊上路吧,別比來比去了!(附: PythonVSshellVsPerl : python 功能比 shell 強大, 而使用比perl簡單, perl 是屬於黑客的工具, 對於一般的編程人士,用python其實挺好的!)

我采用的思路是將 Python 與 Java 關聯起來, 學習 Python  基礎. 所以,本文不打算細述 Python 的語法, 而是通過對比差別來增強對Python 的認識, 當然, 大量的編程練習是必要的,最好能夠結合一個小項目,並通過不斷試錯。 我寫了兩個星期的 python , 才基本有個認識。 注: 我使用的是 Python 2.7.3 版本。

1.    Python  的代碼縮進: 這是首先要提到的。 用括號括起來的代碼塊, 將通過 冒號加 正確縮進(同一層次的代碼塊必須使用完全相同的縮進) 來表達 , 條件語句中的括號通常可省略。 語句末的分號可有可無。寫python 代碼塊時一定要注意加上冒號和正確的縮進, 這是經常容易犯的錯誤。例如:

               while ( i < 100) {

                 i += 2

                       printf("%d",x)

               }   

               用  python  寫是這樣:

              while  i < 100 :

                      i += 2    // 這裡正確的縮進是必要的,否則報語法錯誤。

                 #     print x    ## Error:  unexpected indent , 同一層次的代碼必須采用完全相同的縮進, 多一個或少一個空格都不行。

  

         2.      變量在使用前一定要進行初始化和賦值,否則解釋器無法識別該變量。一個變量均可以存儲多種類型的值,不強調類型。 函數定義時不強調類型。 這是腳本語言的特點, 方便程式的編寫。 比如

                  def  func(x) :

                           return x*2

                  x = 2

                  y = func(x) 

                  print x , " ", y

                  x = ' now changed to an string '

                  print x, "  " , y  , ' OMG'          #  松散的打印格式 ,  雙引號和單引號均可表示字符串 

                  # print zzz    會報錯:  NameError : name 'zzz' is not defined.                          

       

         3.    控制流 :  if , if-elif-...-else , for ... in ... , while ,  continue, break  ;  還有一個 pass 語句表示空執行, 即相當於空塊,或者 NOP 


         4.   單行注釋用 # 號, 多行注釋用三個單引號   

                  '''     these are 

                                    more lines.

                  '''

          5.    強大的內置動態數據結構: list ,  set,  tuple,  dicionary .  這些動態的數據結構很容易組合成更強大的數據結構工具。 關於這些結構的使用,網上有很多文章,這裡就不細述了。

                  mylist = [ ]   #  建立空列表  

                  mylist = [1 , 3 , 'good']

                  print mylist

                  mylist[1] = [('this is a tuple'),  ['nested list']]

                  print mylist

                  list 主要方法有: append(x) , extend(List), insert(x),  sort(), reversed(),  pop([i]), insert(i, x), 等。 

                  myset = [1 , 2 ,1 ,1 , 2]   # 建立集合  ===> myset = [1 ,2]

                  set 有成員檢測功能:  

                  x = 1    

                  if x in myset :   

                        print myset, " has member : ", x

                 else :

                        print x , " is not found in ", myset 

                 mydict = {1 : ('zs', 'good', 25) , 2 : ('ww', 'right', 30) }

                 print mydict

                 mydict['city'] = 'hangzhou'

                 for  k, v in  mydict.iteritems() :

                        print  k, v

                  print dict.keys()

                 元組 tuple 與列表類似, 但元組是不可變的, 這意味著無法修改元組的值。 引用元組的值采用下標方式

                 mytuple = (1, 2, 3, 4)

                 print mytuple[2]

                 # Error  :  mytuple[0] = 0

         6.   模塊。 一個 python 文件就是一個模塊, 以 .py 為後綴。 當你在 func.py 中編寫了函數 sign(x) 後, 要在其他文件中引用,則采用如下方式:

                     [1]  import  func

                           func.sign(x)   #  模塊名.函數名

                     [2]  from func import sign(x)

                           sign(x)           # 直接引用

Copyright © Linux教程網 All Rights Reserved