1. 程式人生 > >【003】Python全棧日記-Python基礎篇(三)

【003】Python全棧日記-Python基礎篇(三)

在這裡插入圖片描述
一、增強型賦值運算子
使用賦值運算時,經常會對某個變數的值進行修改並賦值給自身,如i=i+1;
Python可以用增強型賦值運算子簡化這個過程:
a+=b等價於a=a+b
a-=b等價於a=a-b
a*=b等價於a=a*b
a/=b等價於a=a/b 常用數學運算子都可用於增強型賦值運算。

二、輸入
Python3.x 中 input() 函式接受一個標準輸入資料,返回為 string 型別。因為返回為字串,我們要做計算需要數字,所以轉為整形。
在這裡插入圖片描述
結果:
在這裡插入圖片描述

三、Python中的比較運算子
在這裡插入圖片描述
四、程式執行結構
在程式語言中由三種結構支撐整個程式:順序結構,迴圈結構和分支結構
1、順序結構
按照從上到下的順序,一條語句一條語句的執行,是最基本的結構。之前學習的開學典禮發言的例子就是典型的由上至下的順序結構。
在這裡插入圖片描述

2、迴圈結構
寫迴圈程式時需要注意迴圈變數的初值,迴圈條件和迴圈變數的增量,迴圈的增量俗稱步長,也就是你這個變數每迴圈一次走多長,三者共稱為迴圈三要素。
在Python中沒有大括號來規定每行程式碼的從屬關係,這時候需要使用縮排來表示從屬,一般縮排使用4個空格或者按一下Tab鍵
在這裡插入圖片描述
從上面的例子就能看出,有縮排說明下一條在for的屋子裡,沒縮排則是for的鄰居。我上面的例子沒有寫步長,只寫了起始0,條件到5(不包括5),步長不寫預設為1。

(1)for迴圈
基本結構:
在這裡插入圖片描述
列表、元組、字典、集合、字串都是可以迭代的物件,利用for迴圈依次輸出:
在這裡插入圖片描述

(2)while迴圈
先賦值,然後while+迴圈條件,最後新增步長。
在這裡插入圖片描述

    
當迴圈條件為True時 程式可以無限迴圈下去。

while 條件:
條件滿足時,做的事情1
條件滿足時,做的事情2
條件滿足時,做的事情3
…(省略)…

while迴圈巢狀:九九乘法表
在這裡插入圖片描述

(3)分支語句
If-else結構
if 語句可以巢狀,但不推薦, 儘量保持程式碼簡潔

if語句是用來判斷的,其格式如下:
if 判斷的條件:
條件成立時要執行的操作

讓我們看個例子:
在這裡插入圖片描述
執行結果為:
在這裡插入圖片描述
退出迴圈可按Ctrl+c ,也可以多加一行命令,當輸入Q時退出程式,這就需要關鍵字了,讓我們來學習一下。

注意:
1、每個條件後面要使用冒號(:),表示接下來是滿足條件後要執行的語句塊。
2、使用縮排來劃分語句塊,相同縮排數的語句在一起組成一個語句塊。

[1]、if-else的使用格式

   if 條件:
   	滿足條件時要做的事情1
    	滿足條件時要做的事情2
    	滿足條件時要做的事情3
	else:
    	不滿足條件時要做的事情1
    	不滿足條件時要做的事情2
    	不滿足條件時要做的事情3

[2]、當多個開始條件進行時
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
說明:
當xxx1滿足時,執行事情1,然後整個if結束
當xxx1不滿足時,那麼判斷xxx2,如果xxx2滿足,則執行事情2,然後整個if結束
當xxx1不滿足時,xxx2也不滿足,如果xxx3滿足,則執行事情3,然後整個if結束

(4)break關鍵字
   在迴圈體中使用break關鍵字,整個迴圈會立刻無條件停止
還是剛才那個程式,我們加上一條:
在這裡插入圖片描述
執行結果:
在這裡插入圖片描述
(5)continue關鍵字
在迴圈體中使用continue關鍵字,此次迴圈無條件體停止,執行之後的迴圈
在這裡插入圖片描述

(6)將此陣列中的元素按資料型別分類
type_list=[‘cat’,‘dog’,1,2.4,True,(6,7),{‘beijing’:‘haidian’},[7,8,9]]
例如:陣列中字串有[’cat’,’dog’]

四、函式
1、函式基礎
函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的程式碼段。函式是頂層檔案+模組的最好體現
函式能提高應用的模組性,和程式碼的重複利用率。你已經知道Python提供了許多內建函式,比如print()。但你也可以自己建立函式,這被叫做使用者自定義函式。你可以定義一個由自己想要功能的函式,以下是簡單的規則:

(1)、函式程式碼塊以 def 關鍵詞開頭,後接函式識別符號名稱和圓括號 ()。
(2)、任何傳入引數和自變數必須放在圓括號中間,圓括號之間可以用於定義引數。
(3)、函式的第一行語句可以選擇性地使用文件字串—用於存放函式說明。
(4)、函式內容以冒號起始,並且縮排。
(5)、return [表示式] 結束函式,選擇性地返回一個值給呼叫方。不帶表示式的return相當於返回 None。

在[002]的開學發言例子中我們其實已經用過函式,校長髮言就是定義的一個函式,然後由頭層檔案呼叫。
在這裡插入圖片描述
通過使用直譯器我們再來更好的理解一下:
在這裡插入圖片描述
再舉一個例子:
Python是從上至下依次執行,所以當函式要寫在執行之前
在這裡插入圖片描述
輸出結果:
在這裡插入圖片描述

但是在python中 通常函式是放在模組裡的,然後需要使用時再由頂層檔案呼叫,所以上面兩個例子的方法並不建議。

2、函式呼叫
定義一個函式:給了函式一個名稱,指定了函式裡包含的引數,和程式碼塊結構。
這個函式的基本結構完成以後,你可以通過另一個函式呼叫執行,也可以直接從 Python 直譯器執行。
用一個例子來理解:
先編輯一個tools.py檔案作為模組,裡面有函式area。
在這裡插入圖片描述
然後寫頂層檔案,並呼叫函式:
在這裡插入圖片描述
執行檔案,結果如下:
在這裡插入圖片描述
函式是可以有預設引數的例如
Def area (l,w,c=3)
預設引數一定要放在引數最後
當你不輸入c時,c按照預設執行,當頂層檔案重新賦值c時,c按照新的值執行。

五、作業:
第1題. 計算2的10次方
第2題. 計算出101除以3的餘數
第3題. 將字串‘123’轉換為int型別的數值,賦值給num
第4題. 將16進位制格式的字串‘0x21’轉換為十進位制,賦值給num
第5題. 使用input接收使用者輸入的年齡,並判斷,如果年齡大於等於18則輸出“你成年了”否則輸出“未成年”
第6題. 使用input接收使用者輸入的年齡和性別,判斷如果年齡大於等於18,性別是男,輸出“可以玩英雄聯盟” 如果性別是男,年齡小於18輸出“小學生,去玩兒我的世界”否則輸出“開心消消樂”
第7題. 使用while迴圈輸出 顛倒的99乘法表
第8題. 猜數字