天天看點

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

0.Python之禅

可以通過在python解釋器中輸入import this 檢視python應該注意的一些規範與原則,如下:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

1.列印 "Hello World!"和接受使用者輸入

#輸出
print("Hello World!")
#輸入,括号中參數表示提示資訊
a=input('>>')
print(str(a))
           

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

 2.變量

規則:

(1)變量名隻能包含字母、數字和下劃線,不能數字打頭

(2)變量名不能包含空格,可以使用下劃線來分割其中的單詞

(3)不要使用python關鍵字作為自己的變量名

(4)變量名簡短又具有描述性

(5)慎用小寫字母l和小寫字母o,容易被人錯看成數字1和0

3.注釋

單行注釋:#

多行注釋:使用 ''' 或 """括起來

示例:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

4.運算符

(1)算術運算符:+         -     *      /(除的結果是浮點數)      %      **(乘方)     //(取整除 - 向下取接近除數的整數)

(2)比較運算符:==   !=   >=   <=    >  <

(3)指派運算符:=   +=   -=   *=  /=  %=  //=   **=

(4)位運算符:&   |    ^   ~    <<     >>

(5)邏輯運算符:and  or  not

(6)成員運算符:in       not  in

(7)身份運算符:is(判斷兩個辨別符是否引用一個對象)      is not

                             如:id(x)  is id(y)等價于id(x)==id(y)      注:id()是用于擷取變量的記憶體位址

5.python的記憶體管理

(1)動态語言的特性:變量無需事先聲明,也不需要指定類型

(2)程式設計中無需關心變量的存亡,也不關心記憶體的管理

(3)python的記憶體管理機制:

         python使用引用計數記錄所有對象的引用數

                     計數為0:可被GC垃圾回收(垃圾回收的作用是1.回收不使用的變量占用的記憶體2.規整記憶體,減少碎片記憶體),當變量不再使用的時候,我們可以申請垃圾回收,但是變量不會被立即回收,而是打上标記,當達到一定條件(比如記憶體滿到一定門檻值)會自動進行回收(這個取決于語言中具體實作)

                     計數增加:指派給其他變量就增加計數

                     計數減少:函數運作結束時,局部變量就會自動被銷毀,對象引用計數減少

一般在對GC沒有深刻了解的時候不建議自己手動地進行垃圾回收(因為在垃圾回收進行記憶體規整時,不能操作相應變量,是以會使性能下降)

在記憶體中盡量存放最有用的資料,不能因為它有GC,就頻繁生成垃圾,然後程式會頻繁調用GC,因為每一次垃圾回收都有會使性能下降,總體會使性能大幅下降

這種垃圾回收機制類似于Java

6.語句

(1)分支語句

1)單分支

if(condition):

           語句塊
           

if的括号中的condition的等價

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

2)多分支結構

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

(2)循環語句

1)whie循環

while(condition):
    語句塊
           

2)for循環

python中的for循環不同于C++中的for循環,它的for循環更像是C++11當中新增的針對周遊數組或容器的foreach循環語句

python的for循環可以周遊任何序列的項目

示例:

運作結果:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

結論:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

(1)for循環格式為:   

for  代表序列每個元素的自定義變量名 in    要周遊的序列變量名 :
    語句塊;
           

  如上述:for    animal     in     animals :

  注意:for循環後别忘了有冒号

(2)python是通過縮進來判斷代碼行與前一個代碼行的關系,每個在for語句後縮進的語句都會被認為是for循環内部的語句,且

   針對序列中的每個元素都會執行一次,是以縮進對于python來說很重要,它的作用類似于C++中的{},不能随意縮進

(3)python每一行的print語句會自動換行

(4)python會忽略代碼中間的空行

range()函數

python可以使用range()函數輕松生成一系列的數字,大概有下列幾種形式

(1)指定區間:range(1,5)     生成1,2,3,4     你沒看錯,這裡沒有5,又是左閉右開

(2)省略左邊,預設從0開始:range(5)    生成0,1,2,3,4

(3)指定區間(前兩個參數)和步長(第三個參數):range(0,10,3)       生成0,3,6,9   後一個數字等于前一個數字+3

(4)負數:range(-10,-100,-30)      生成-10,-40,-70              注意這裡沒有-100,始終不要忘了,右邊是開區間

(5)可以結合range()和len()函數以周遊一個序列的索引:見示例代碼

(6)可以使用range()函數來建立一個清單:利用list()函數将range()的結果直接轉換成清單

示例:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

運作結果:

Python學習之路(1)——基本文法0.Python之禅1.列印 "Hello World!"和接受使用者輸入 2.變量3.注釋4.運算符5.python的記憶體管理6.語句3)break和continue

3)break和continue

break:終止循環,隻終止離它最近的一層循環

continue:終止此次疊代的循環,繼續下一次疊代