Python核心編程(第二版)學習筆記02 【第3章 Python基礎】

Python核心編程(第二版)學習筆記02 【第3章 Python基礎】python

2009-4-16 20:45 Tony編程

1 python語句基本規則和特殊字符:
     反斜槓 \  繼續上一行
     分號   ;  將兩個語句鏈接在一行中
     冒號   :  將代碼塊的頭和體分開
    
2 有兩種狀況不使用反斜槓也能夠跨行。1)在使用閉合操做符時,單一語句能夠跨多行,例如:小括號、中括號、大括號;2)三引號包括下的字符串也能夠跨行書寫
函數

3 python中的賦值,並非直接將一個值賦給一個變量,而是將該對象的引用賦值給變量(如今我也不太清楚,下一章中應該就詳細描述了)學習

4 賦值語句沒有返回值,不像C語言中的賦值語句能夠返回值。形如:y = (x = a + b)這個表達式是錯誤的,但能夠寫成形如:y = x = a + bspa

5 增量賦值 +=  -=  *=  /=  %=  **=  <<=  >>=  &=  ^=  |=
  增量賦值的好處是,可變對象會被就地修改,無需拷貝引用
 
6 多重賦值 x = y = z = 1
  一個值爲1的整型對象被建立,該對象的同一個引用被賦值給x,y和z
 
7 多元賦值 x, y, z = 1, 2, 'hello'
  等號兩邊的對象都是元祖,括號被省略了。元祖的小括號是可選的。上面等價於(x, y, z) = (1, 2, 'hello')
 
8 交換兩個變量的值 x, y = y, x
  在其餘語言中,都須要第三個臨時變量來保存中間值,python能夠直接使用多元賦值來實現
 
9 python中的關鍵字在模塊keyword中,由keyword.kwlist能夠查到,並能夠經過iskeyword()函數來判斷一個標識是不是關鍵字
對象

10 標識符中下劃線的意義:
        _xxx     看做是模塊或類的私有變量,在模塊外或類外不能被直接訪問
        __xxx__  系統定義的名字,普通變量應該避免定義這種標識符
       
11 在模塊、類定義、或者函數定義中第一個沒有賦值的字符串即做爲文檔字符串,經過obj.__doc__訪問
內存

12 python文件結構模版
    (1)起始行
    (2)模塊文檔字符串
    (3)模塊導入
    (4)變量定義
    (5)類定義
    (6)函數定義
    (7)主程序
   
13 導入一個模塊時,該模塊的主代碼將會被執行,模塊裏定義的類的主代碼也會被執行,可是模塊裏定義的函數和類中的方法在導入時不執行
   全部模塊都有能力來執行代碼,最高級別的python語句即沒有縮進的代碼行,在模塊導入時會被執行
作用域

14 若是一個模塊是經過腳本直接執行的,則它的__name__屬性值爲"__main__" ,不然被別的模塊導入的,則它的__name__值爲該模塊的名字文檔

15 python中不須要定義變量,也不須要類型聲明,變量類型和內存佔用都是在運行時肯定的字符串

16 引用計數器 python記錄全部使用中的對象各有多少引用,當引用爲0時,會回收這個對象所佔用的內存   增長引用計數器 當對象被建立並賦值給變量時,該對象的引用計數器被設置爲1,當同一個對象又被賦值給其它變量時、或者做爲參數傳遞給函數、方法或類實例時,新的引用被建立,引用計數器都會自動加1   如 x = 3.14  對象被建立,引用計數器值爲1      y = x     新的引用被建立,引用計數器值爲2      fun(x)    新的引用被建立,引用計數器值爲3,函數執行完後,引用計數器值減1   減小引用計數器 當對象的引用被銷燬時,引用計數器值就會減少   例如 引用離開其做用域範圍;當變量被賦值了另外一個對象時,原對象的引用計數器會自動減1;使用del語句顯示地銷燬引用   17 使用os.linesep 表示換行,這樣換行跟平臺無關

相關文章
相關標籤/搜索