摘要:函數(shù)對象函數(shù)是第一類對象,即函數(shù)可以當(dāng)做數(shù)據(jù)傳遞可以被引用可以當(dāng)做參數(shù)傳遞返回值可以是函數(shù)可以當(dāng)做容器類型的元素函數(shù)的嵌套函數(shù)的嵌套的調(diào)用函數(shù)的嵌套定義返回值,即的值名稱空間名稱空間存放名字的地方名稱空間分為三種內(nèi)置名稱空間隨著解釋器的啟動
1. 函數(shù)對象
函數(shù)是第一類對象,即函數(shù)可以當(dāng)做數(shù)據(jù)傳遞
可以被引用
可以當(dāng)做參數(shù)傳遞
返回值可以是函數(shù)
可以當(dāng)做容器類型的元素
def foo(): print("from foo") def index(): print("from index") dic = { "foo":foo, "index":index, } while True: choice = input(">>>>>").strip() if choice in dic: dic[choice]()2. 函數(shù)的嵌套 2.1 函數(shù)的嵌套的調(diào)用
def max(x,y): return x if x > y else y def max4(a,b,c,d): res1 = max(a,b) res2 = max(res1,c) res3 = max(res2,d) return res3 print(max4(234,456,123,789))2.2 函數(shù)的嵌套定義
def f1(): def f2(): def f3(): print("from f3") f3() f2() f1() # 返回值 from f3 ,即 f3的值3. 名稱空間
名稱空間:存放名字的地方
名稱空間分為三種
隨著python解釋器的啟動而產(chǎn)生
a = [1,2,3,4,5] print(max(a))3.2 全局名稱空間
文件的執(zhí)行會產(chǎn)生全局名稱空間,指的是文件級別定義的名字都會放入改空間
x = 1 def fun(): x = 2 print(x) fun() print(x)3.3 局部名稱空間
調(diào)用函數(shù)時會產(chǎn)生局部名稱空間,只在函數(shù)調(diào)用時臨時綁定,調(diào)用結(jié)束解綁定
x = 10000 def func(): x = 1 def f1(): print(x) def f2(): print(x) f2() f1() func()4. 作用域
作用域即范圍(作用域關(guān)系是在函數(shù)定義階段就已經(jīng)固定的,與函數(shù)的調(diào)用位置無關(guān))
查看作用域:globals(),locals()
def f1(): x = 1 y = 2 def f2(): print(x,y) return f2 f = f1() print(f.__closure__[0]) print(f.__closure__[0].cell_contents)5. 裝飾器 6. 迭代器 7. 生成器
def foo(): print("一") yield 1 print("二") yield 2 print("三") yield 3 print("四") g = foo() # for i in g: # print(i) print(next(g)) print(next(g)) print(next(g)) print(next(g))8. 內(nèi)置函數(shù)
- | - | Built-in Functions | - | - |
---|---|---|---|---|
abs() | dict() | help() | min() | stator() |
all() | dir() | hex() | next() | slice() |
any() | divmod() | id() | object() | sorted() |
ascii() | enumerate() | input() | oct() | staticmethod() |
bin() | enav() | int() | open() | str() |
bool() | exec() | isinstance() | ord() | sun() |
bytearray() | filter() | issubclass() | pow() | super() |
bytes() | float() | iter() | print() | tuple() |
callable() | format() | len() | property() | type() |
chr() | frozenset() | list() | range() | vars() |
classmethod() | getattr() | locals() | repr() | zip() |
compile() | globals() | map() | reversed() | __import__() |
complex() | hasattr() | max() | round() | - |
delattr() | hash() | memoryview() | set() | - |
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/44411.html
摘要:更高性能的默認(rèn)縮短到時間的更安全的列表推導(dǎo)更簡易的合并兩個不僅僅合并很方便,合并等也很方便整數(shù)類型提供了兩個整數(shù)類型和,只提供有個整數(shù)類型,如下的代碼總結(jié)提供了很多新的特性,方便我們編碼的同時,也帶來了更好的安全性和較高的性能。 概述 ??隨著Python在機器學(xué)習(xí)和數(shù)據(jù)科學(xué)領(lǐng)域的應(yīng)用越來越廣泛,相關(guān)的Python庫也增長的非???。但是Python本身存在一個非常要命的問題,就是Pyt...
摘要:與的區(qū)別默認(rèn)編碼方式是碼。中輸入內(nèi)容分為和兩個函數(shù),前者只接受文本輸入,而在中只有且統(tǒng)一將用戶的輸入存儲為對象。中不再使用和后綴說明長整型。 python2與python3的區(qū)別python2默認(rèn)編碼方式是ascii碼。(可在文件的首行:# -*- encoding:utf-8 -*...
摘要:課程簡介簡明易懂的課程,不僅適用于那些有其它語言基礎(chǔ)的同學(xué),對沒有編程經(jīng)驗的同學(xué)也非常友好。建議遵守以下約定使用個空格來縮進(jìn)永遠(yuǎn)不要混用空格和制表符在函數(shù)之間空一行在類之間空兩行字典,列表,元組以及參數(shù)列表中,在后添加一個空格。 showImg(https://segmentfault.com/img/bVCldE); 課程簡介:簡明易懂的 Python3 課程,不僅適用于那些有其它語...
摘要:基礎(chǔ)知識基礎(chǔ)語法基礎(chǔ)知識編程第一步基礎(chǔ)知識基本數(shù)據(jù)類型基礎(chǔ)知識解釋器基礎(chǔ)知識注釋基礎(chǔ)知識運算符基礎(chǔ)知識數(shù)字基礎(chǔ)知識字符串基礎(chǔ)知識列表基礎(chǔ)知識元組基礎(chǔ)知識字典基礎(chǔ)知識條件控制基礎(chǔ)知識循環(huán)基礎(chǔ)知識迭代器與生成器基礎(chǔ)知識函數(shù)基礎(chǔ)知識數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)知 Python3基礎(chǔ)知識 | 基礎(chǔ)語法?Python3基礎(chǔ)知識 | 編程第一步?Python3基礎(chǔ)知識 | 基本數(shù)據(jù)類型Python3基礎(chǔ)知識 | ...
閱讀 1138·2019-08-30 12:57
閱讀 2258·2019-08-30 11:11
閱讀 2223·2019-08-29 15:20
閱讀 1917·2019-08-29 14:12
閱讀 3309·2019-08-28 17:51
閱讀 2421·2019-08-26 13:23
閱讀 857·2019-08-26 10:34
閱讀 3920·2019-08-23 12:37