python第十一天

2022-07-30 07:36:07 字數 1613 閱讀 8172

函式總結:

def func(a, b):

print(a, b)

return a + b

四個組成部分:

函式名:呼叫函式的依據

函式體:執行函式邏輯的

引數列表:為函式提供內部資源

返回值:將函式執行結果返回給外界

返回值:1、空返回(沒有return或空return)  2、一鍵返回  3、多值返回:裝有多個值的元組

引數列表:

實參:外界呼叫函式傳入的引數,擁有實際值

形參:函式定義時,()中定於用來接收實參的值

關係:形參是對實參值得拷貝

實參分類:

位置實參:按位置對應傳遞引數,必須出現在關鍵字實參之前,

關鍵字實參:不需要按位置對應傳參,用引數名標註為誰傳參,必須出現在位置實參值後

位置實參:只能給位置形參傳參(位置形參,預設形參,可變長位置形參)

關鍵字實參:可以任意形參傳參

出現順序:

位置形參》預設形參》可變長位置形參》關鍵字形參》可變長關鍵字形參

函式物件

函式物件的應用:

1、可以直接被引用: fn = cp_fn

2、可以當做函式引數傳遞:computed(cp_fn,100,20)

3、可以作為函式的返回值:get_cp_fn(cmd):return add

4、可以作為容器型別的元素: 函式對應關係中的值

命名空間

作用:解決有名字有限,導致名字重**送衝突的問題

三種命名空間:

built-in:內建命名空間,系統級, 乙個,隨直譯器執行而產生,直譯器停止而銷毀。

global:全域性命名空間,檔案級,多個,隨著所屬檔案載入而生產,檔案執行完畢而銷毀。

local:區域性命名空間,函式級,多個,對所屬函式執行而產生,函式執行完畢而銷毀。

注意:載入順序:built-in 》global 》local

def fn()

global num

num = 20

print(num)

#乙個檔案中的global名字就是乙個,所以函式內部外部使用的名字都是乙個

函式的巢狀

# 將函式直接定義到另乙個函式內部,就可以使用外部函式中的名字

def outer():

num = 20

def inner():

print(num) # inner就可以直接使用outer中的名字

inner()

outer()

作用域定義:名字起作用的範圍

作用:解決同名字可以共存的問題

四種作用域:

built-in:內建作用域,所有檔案所有函式

global:全域性作用域,當前檔案所有函式

enclosing:巢狀作用域,當前函式與當前函式的內部函式

local:區域性作用域,當前函式

注意:不用作用域之前的名字不衝突,以達到名字的重用

查詢順序:local》enclosing》global》built-in

閉包(closure)

定義:被包裹的函式,稱之為閉包

完整閉包結:1、將函式進行封包處理;2、提公升函式名的作用域,將內部函式隊形作為外部函式的返回值

Python 集合 第十一天

集合 set 是乙個無序的不重複元素序列。可以使用大括號 或者 set 函式建立集合,注意 建立乙個空集合必須用set 而不是 因為 是用來建立乙個空字典。建立方式 parame 或者set value 給個例項 語法格式如下 s.add x 將元素 x 新增到集合 s 中,如果元素已存在,則不進行...

UnixC第十一天

回憶昨天內容 一 訊號阻塞 sigprocmask 2 sigset t 訊號阻塞和訊號忽略的區別 可靠訊號 不可靠 訊號丟失 二 獲取程序的未決訊號集 從未決訊號集中找未決訊號 sigpending 2 什麼是未決訊號?三 訊號從產生到處理的整個過程 四 system v ipc 訊息佇列 獲取乙...

第十一天作業

第一題 import time import random deffoo print 開始執行。time.sleep random.uniform 1,3 print 執行完畢 return 都結束了 print foo 第二題 import time import random deffoo pr...