python基礎自學 第七天

2021-08-25 19:21:28 字數 2326 閱讀 3532

0.1變數的引用

1.1引用的概念

注意:

如果變數已經被定義,當給乙個變數賦值的時候,本質上是修改了資料的引用

1.2函式的引數和返回值的傳遞

呼叫函式時,本質上傳遞的是實參儲存資料的引用(實參的記憶體位址),而不是實參儲存的資料

02.可變和不可變型別

#不可變型別,記憶體中資料不允許被修改:

數字型別:int, bool , float, complex,long(2.x)

字串 str

元祖 tuple

#可變型別,記憶體中的資料可以被修改:

列表 字典

注意:

可變型別通過方法改變資料,記憶體位址不會改變

如果使用賦值語句改變,記憶體位址會改變

字典的key只能使用不可變型別的資料

雜湊(hash)

接收乙個不可變型別的資料作為引數

返回結果是乙個整數

雜湊就是一種演算法,其作用就是提取資料的特徵碼(獨一無二的)

設定字典的鍵值對時,會首先對 key 進行 hash ,key只能是不可變型別

03.區域性變數和全域性變數

區域性變數:在函式內部定義的變數,只能在函式內使用.

全域性變數: 在函式外部定義的變數,所有函式內部都可以使用這個變數

3.1區域性變數

區域性變數是在函式內部定的變數,只能在函式內部使用

函式執行結束後,函式內部的區域性變數,會被系統**

不同的函式,可以定義相同的名字的區域性變數,相互並不會影響

區域性變數的生命週期

生命週期就是變數從被建立到被系統**的過程

區域性變數在函式執行時才被建立

函式執行結束後區域性變數被系統**

區域性變數在生命週期內,可以用來儲存函式內部歷史使用到的資料

3.2全區變數

在函式外部定義的變數,所以函式內部都可以使用這個變數

不允許直接修改全域性變數的引用,使用賦值語句修改全域性變數的值

全域性變數定義在其他函式的上方

在函式內部修改全域性變數的值

改變全域性變數需要使用global宣告一下變數即可

補: **結構示意圖

shebang (用哪個直譯器)

import模組

全域性變數

函式定義

執行**

全域性變數的命名建議

全域性變數名前面應該增加g_或者gl_的字首

01函式引數和返回值的作用

如果函式內部處理的資料不確定,就可以將外界的資料以引數傳遞到函式內部

如果希望函式執行完成後,想外界匯報執行結果們就可以增加返回值

返回值

如果函式返回的型別是元祖,同時希望單獨的元祖中的元素\

可以使用多個變數,一次接受函式的返回結果\

;注意:

使用多個變數接收結果時,變數的個數應該和元祖中的元素個保持一致\

02函式引數

在函式的內部,針對引數使用賦值語句,不會修改到外部的實參變數

如果傳遞的引數型別是可變型別,在函式內部使用方法更改了資料的內容,

同樣會影響到外部資料

補: 運算子— +=

列表變數呼叫 += 本質上是執行extend()方法,函式內部呼叫也會影響外部**

預設引數

預設引數,需要使用最常見的值作為預設值

如果乙個引數的值不能確定,則不應該這是預設值,具體的數值呼叫函式時,有外界傳遞.

注: 乙個帶預設值的引數,一定要放在所以引數的最後面

**:

如果有多個預設引數,需要制定引數名

多值引數(了解,看懂網路大咖的**)

乙個函式能夠處理的引數個數是不確定的,就可以使用多值引數

兩種分類:

引數名前增加乙個 * 可以接收元祖

引數名前面增加兩個 * 可以接收字典

自學python第七天

函式式程式設計 函式式程式設計的乙個特點就是,允許把函式本身作為引數傳入另乙個函式,還允許返回乙個函式!函式式程式設計就是一種抽象程度很高的程式設計正規化,純粹的函式式程式語言編寫的函式沒有變數,因此,任意乙個函式,只要輸入是確定的,輸出就是確定的,這種純函式我們稱之為沒有 而允許使用變數的程式語言...

Python 基礎 第七天

python3 命名空間和作用域 一般有三種命名空間 內建名稱 全域性名稱 區域性名稱 內建名稱 python 語言內建的名稱,比如函式名 abs char 和異常名稱 baseexception exception 等等 全域性名稱 模組中定義的名稱,記錄了模組的變數,包括函式 類 其它匯入的模組...

python基礎作業第七天

恢復內容開始 1.判斷乙個數是否是水仙花數,水仙花數是乙個三位數,三位數的每一位的三次方的和還等於這個數.那這個數就是乙個水仙花數,例如 153 1 3 5 3 3 3 sum 0 num input 請輸入乙個數字 for c in range len num sum sum int num c ...