函式總結:
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...