欧美日韩1234-岳两女共夫互换观看视频-日本不卡一区二区-gogogo高清国语完整-国产区在线-狠久久-男男互操视频-另类国产-欧美人与禽猛交乱配视频-欧美另类一区-久久成人在线视频-国产一级片av-青青草视频播放-欧美三级黄-日日射天天射-在线国产欧美-日韩永久-国产黄色成人-伊人三区-国产午夜精品理论片-999精彩视频-免费看av软件-欧美xxxx喷水-国产蜜臀-美女四肢被绑在床扒衣-日本公妇乱淫-99久久久国产精品无码性

027-81331413

初學Python之第一個入門小程序

發布時間:2020-12-16 瀏覽:2585

去年夏天開始接觸Python,剛開始覺得這個語言相當簡潔精練,斷斷續續的學了一些基礎知識,打算今年好好地系統學一下。先把以前看深入Python時做的筆記整理一下,以免像以前那樣學了后面的就忘了前面的基礎知識。

     第一個Python示例小程序:

1
2
3
4
5
6
7
8
9
10
11
12
def buildConnectionString(params):
    """Build a connection string from a dictionary
       Returns string.
    """
    return ";".join(["%s=%s" %(k,v) for k, v in params.items()])
 
if __name__ == "__main__":
    myParams = {"server":"temp",\
                "database":"db_temp",\
                "uid":"sa",\
                "pwd":"dont know"}
    print buildConnectionString(myParams)

  運行結果:

>>>
pwd=secret;database=master;uid=sa;server=mpilgrim

函數聲明

     首先,函數聲明以關鍵字def開始,接著為函數名,然后為參數,參數放在小括號里,多個參數之間用逗號分隔。

     其次,函數沒有定義返回的數據類型,Python不需要指定返回值的數據類型;甚至不需要指定是由有返回值。實際上,每個Python函數都返回一個值,如果函數執行過return語句,它將返回指定的值,否則將返回None空值。在Python中參數不需要指定數據類型,Python會判定一個變量是什么類型,并在內部將其記錄下來。

 

文檔化函數

     可以通過給出一個 doc string (文檔說明的字符串來文檔化一個 Python 函數。定義 buildConnectionString 函數的 doc string

1
2
3
4
5
def buildConnectionString(params):
 
"""Build a connection string from a dictionary of parameters.
 
Returns string."""

   三重引號表示一個多行字符串。在開始與結束引號間的所有東西都被視為單個字符串的一部分,包括硬回車和其它的引號字符。您可以在任何地方使用它們,但是您可能會發現,它們經常被用于定義 doc string

     在三重引號中的任何東西都是這個函數的 doc string,它們用來說明函數可以做什么。如果存在 doc string,它必須是一個函數要定義的第一個內容 (也就是說,在冒號后面的第一個內容)。在技術上不要求給出函數的 doc string,但應該盡可能為每個函數都添加doc string,它 在運行時可作為函數的屬性。

 

萬物皆對象

     在Python中,函數同其它東西一樣也是對象(剛開始覺得很新奇)。

 

1
2
3
4
5
6
7
>>> import odbchelper (1)
>>> params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}
>>> print odbchelper.buildConnectionString(params) (2)
server=mpilgrim;uid=sa;database=master;pwd=secret
>>> print odbchelper.buildConnectionString.__doc__ (3)
Build a connection string from a dictionary
  Returns string.

 

  (1)第一行將 odbchelper 程序作為模塊導入。模塊是指一個可以交互使用,或者從另一 Python 程序訪問的代碼段。 只要導入了一個模塊,就可以引用它的任何公共的函數、類或屬性。模塊可以通過這種方法來使用其它模塊的功能。

     (2)當使用在被導入模塊中定義的函數時,必須包含模塊的名字。所以不能只使用 buildConnectionString,而應該使用 odbchelper.buildConnectionString。

     (3)訪問函數的 __doc__ 屬性并不是通過函數調用。

代碼縮進

     Python 函數沒有明顯的 begin 和 end,沒有標明函數的開始和結束的花括號。唯一的分隔符是一個冒號 (:),接著代碼本身是縮進的。

     代碼塊是通過它們的縮進來定義的。這里所說的“代碼塊”是指:函數、if 語句、for 循環、while 循環,等等。開始縮進表示塊的開始,取消縮進表示塊的結束。不存在明顯的括號,大括號或關鍵字。

測試模塊

     所有的 Python 模塊都是對象,并且有幾個有用的屬性。可以使用這些屬性方便地測試你所編寫的模塊。下面是一個使用 if __name__ 的技巧。

if __name__ == "__main__":

  首先,if 表達式無需使用圓括號括起來。其次,if 語句以冒號結束,緊跟其后的是縮進代碼。

     模塊是對象,并且所有的模塊都有一個內置屬性 __name__。一個模塊的 __name__ 的值取決于你如何應用模塊。如果 import 模塊,那么 __name__ 的值通常為模塊的文件名,不帶路徑或者文件擴展名。但是你也可以像一個標準的程序一樣直接運行模塊,在這種情況下 __name__ 的值將是一個特別的缺省值,__main__,這樣你可以很方便地測試單個模塊。