国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python 學習筆記

2019-11-25 18:45:15
字體:
來源:轉載
供稿:網友
可以任意轉載,但轉載時必須標明原作者charlee、原始鏈接http://tech.idv2.com/2008/11/03/python-memo/以及本聲明。

基本概念

  • Python居然支持復數。如(-5+4j)。但要注意虛數單位單獨使用時要寫成 1j,不能寫成 j。
  • 與Perl和PHP的區別:單引號和雙引號沒有任何區別。沒有插值功能。
  • 三引號:''' 和 """ 相當于Perl的heredoc。
  • 行尾不需要用分號,分號僅用于一行寫多條語句的情況。跟BASIC的冒號有些相似。
  • 縮進是有語義的!建議使用TAB縮進

運算符與表達式

  • 運算符 ** 乘冪,Perl也有。
  • 字符串的 * 表示重復,相當于Perl的 x 運算符。
  • 居然還有專用于整除的 // 。別跟Perl 6的 // 混淆了。

控制流

  • if-elif-else,Perl為if-elsif-else,bash為if-elif-fi
  • if、elif等控制流語句后面要加冒號,很像PHP的語法
  • while和for循環可以帶else,循環正常結束時就會執行else。不用像C語言那樣,循環結束時要檢查循環變量是否等于終值,以判斷是否正常結束。贊
  • range函數生成的結果不包括終點。比較:Perl的 .. 運算符包括終點。所以,Python的range(a,b)理解成C語言的 for(i=a;i<b,i++) 好些。
  • 什么都不做的pass語句,算是個python特色

函數

  • 函數中使用全局變量需要用global關鍵字,類似于PHP
  • DocString,又一個python特色,函數的第一個邏輯航的字符串作為文檔字符串。類似于POD和javadoc,不過是寫在函數體內的。還能通過"函數名.__doc__"訪問
  • lambda:類似于perl的閉包

數據結構

  • 列表:定義方式為 a=[1,2]。等價于perl的數組/列表
  • 元組(tuple):定義方式為 a=(1,2)。
  • 要注意列表中的列表不會被打散,如 a=[1,2], b=[a,3,4],結果就是 b=[[1,2],3,4]。這一點與Perl不同。
  • 字典:定義方式為 c={'a':1, 'b':2}。等價于perl的散列。注意兩點:
    • 定義和訪問時,key必須用引號引起來。
    • 使用{}定義,使用[]訪問,即c['a']。與Perl不同。
  • 列表賦值是引用賦值。要想拷貝,必須用切片:b = a[:]。Perl程序員要注意。
  • 列表的sort會改變原列表。

例外

  • try-except-finally,相當于java的try-catch-finally
  • 還有else,當沒有發生異常、正常結束try塊時執行。跟for/while的else塊一樣
  • 故意拋出異常叫raise,java里面叫throw

面向對象

  • 類的__init__函數類似于C++的構造函數;__del__函數類似于C++的析構函數。
  • 類方法定義的第一個參數必須為self,調用時這個參數會被傳遞為對象本身。類似于perl,perl中第一個參數也會被傳遞為對象本身,不過需要程序員自己寫 my $self = shift; 來接收。
  • 用C++的話來說,所有成員函數都是虛函數。
  • 調用基類方法時要手工傳遞self,如 Parnet.__init__(self, name)。

模塊

  • import foo; 相當于perl的 use foo;
  • from foo import bar 相當于perl的 use foo qw/bar/;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南靖县| 前郭尔| 兴文县| 潞城市| 色达县| 大方县| 麦盖提县| 霍州市| 泌阳县| 大城县| 荣成市| 常德市| 虹口区| 南和县| 贺州市| 马边| 呼伦贝尔市| 龙江县| 郎溪县| 江西省| 西华县| 内丘县| 靖江市| 乐至县| 大埔县| 达孜县| 尚义县| 通州区| 彭山县| 凤翔县| 吴忠市| 拜城县| 东丽区| 桑日县| 嘉鱼县| 祥云县| 保定市| 张家口市| 常州市| 鄄城县| 曲阜市|