本系列定位為複習筆記,某些內容並未提及。
在此記錄一些典型疑問和我在學習中的問題或經常遺忘的細節,也會新增一些覺得有意思的部分(其實就是隨心所欲 )
內容主要使用**進行傳達
def
printme
(str):
print
(str
)printme(
"1")
printme(
"2")
temp = printme(
'hello'
)print
(temp)
====
====
====
====
=== restart: c:\users\雨田人尹\desktop\test.py ==
====
====
====
====
=我要呼叫使用者自定義函式!
再次呼叫同一函式
hello
none
#由於函式沒有設定return返回值,因此temp被賦予了none物件
與
(關鍵字引數,命名關鍵字引數)
可變引數是乙個元組
def
add(x, y=23,
*var)
:print
(x)print
(y)print
(var)
#warining 此處輸入引數的方式,預設引數一般放最後要好一點!!!!!!!!!
>>
> add(2)
223()
>>
> add(2,
3)23
()>>
> add(2,
3,5)
23(5
,)>>
> add(
2,y=3,
3,4)
syntaxerror: positional argument follows keyword argument
>>
> add(
2,y=3)
23()
global用於申明函式外的變數,為整個程式的全域性變數
nonlocal主要用於實現閉包內嵌函式,在函式中,使用遞迴時設定乙個函式內的區域性的全域性變數
num =
1def
fun1()
:global num # 需要使用 global 關鍵字宣告
print
(num)
# 1 num =
123print
(num)
# 123
fun1(
)print
(num)
# 123
def
add():
a=1def
add2()
:nonlocal a
a+=1return a
print
(add2())
====
====
====
====
=== restart: c:\users\雨田人尹\desktop\test.py ==
====
====
====
====
=>>
> add(
)2
如果在乙個內部函式裡對外層非全域性作用域的變數進行引用,那麼內部函式就被認為是閉包。
通過閉包可以訪問外層非全域性作用域的變數,這個作用域稱為 閉包作用域。
def
funx
(x):
deffuny
(y):
return x * y
return funy
i = funx(8)
print
(type
(i))
# print
(i(5))
# 40
遞迴可參考我力扣刷題的遞迴類題型
>>
>
list
(filter
(lambda x :
1if x%3==
0else0,
range(0
,101))
)[0,
3,6,
9,12,
15,18,
21,24,
27,30,
33,36,
39,42,
45,48,
51,54,
57,60,
63,66,
69,72,
75,78,
81,84,
87,90,
93,96,
99]>>
>
[x for x in
range(0
,101
)if x%3==
0][0
,3,6
,9,12
,15,18
,21,24
,27,30
,33,36
,39,42
,45,48
,51,54
,57,60
,63,66
,69,72
,75,78
,81,84
,87,90
,93,96
,99]>>
>
[x%3
for x in
range(0
,101
)if x%3==
0][0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0,0
,0]>>
>
list
(map
(lambda x:
[x**
2,x]
,range(11
)))[
[0,0
],[1
,1],
[4,2
],[9
,3],
[16,4
],[25
,5],
[36,6
],[49
,7],
[64,8
],[81
,9],
[100,10
]]>>
>
list
(zip([
1,3,
5,7,
9],[
2,4,
6,8,
10]))
[(1,
2),(
3,4)
,(5,
6),(
7,8)
,(9,
10)]>>
>
list
(map
(lambda x,y:
[x,y],[
123,
1234
,231
,123],
[123
,123
,342
,3456143,2
,25])
)[[123
,123],
[1234
,123],
[231
,342],
[123
,3456143]]
#map()後面可以接受多個序列作為引數
刻意練習 Python基礎 字典與集合
一 字典 建立字典 可使用花括號或者使用dict 函式來建立字典。字典中的key不允許重複。刪除key value對 使用del語句。in或not in 判斷字典是否包含指定的key。clear 方法 清空字典中所有的key value對,對字典執行clear 方法後,該字典會變成乙個空字典。get...
python基礎刻意練習 day10
python基礎刻意練習 day10 檔案系統 我們所知道常用的作業系統有windows,mac os,linx,unix等,這些作業系統底層對於檔案系統的訪問工作原理是不一樣的,因此可能就要針對不同的系統來考慮使用哪些檔案系統模組。這樣是很麻煩的,因為這就意味著當程式的執行環境一改變,就要相應的去...
Python基礎刻意練習 Day17 模組
day1 變數 運算子與資料型別 day2 條件與迴圈 day3 4 列表與元組 day5 字串與序列 day6 7 函式與lambda表示式 day8 字典與集合 day9 10 檔案與檔案系統 day11 異常處理 day12 else 與 with 語句 day13 14 類與物件 day15...