varibal =
varibal['a']
100varibal.items()
dict_items([('a', 100), ('b', 100), ('c', 200)])
#遍歷字典
[key for key ,value in varibal.items() if value ==100]
['a', 'b']
def get_keys(dict_varibel,value):
return [k for k ,v in dict_varibel.items() if v == value]
get_keys(varibal,200)
['c']
get_keys(varibal,200)
get_keys(varibal,200)
[『c』]
** 函式是組織好的,可重複使用的,能夠完成特定功能的**段,它是**塊的抽象**
函式由函式名 ,形參和返回值組成。
引數分為位置引數和關鍵字引數,如果用位置引數,很容易混亂函式放置的位置,如果給引數賦值,就可以不必按照原來的引數順序放置
get_keys(dict_varibel=, value = 20)
['a']
get_keys( value = 20,dict_varibel=)
['a']
函式通過引數獲取我們傳遞的值,函式中改變了引數,那麼我們傳遞的值會改變嗎
def test(varibal):
varibal = 100
return varibal
var =1
test(var)
var =1
test(var)
100var
** 當var有值時,不改變var的值,當var為空時,會改變var的值**
1var=
test(var)
100賦值
def test(name,age,*arge, **kwarge): #輸入的引數可以為任意的型別或者關鍵字
print(name,age,*arge,**kwarge) #輸出為輸入
test('wang',12)
wang 12
dict_varibals =
test('wong',12,dict_varibals)
wong 12
a=10
b=[12,12]
def test():
print('test')
c=test
c
可以把函式賦值給乙個變數
c.__name__
'test'
函式可以返回函式
def test(func):
return func
def func():
print('func run')
f =test(func)
f.__name__
'func'
**
函式可以當做函式的返回值進行返回
f()
func run
#需求:返回乙個從0到1的浮點值
import random
random.random()
0.49500584968514516
def test():
return random.random()
test()
0.2502416440658627
round(random.random(),3)
0.235
#函式返回的浮點數保留三位有效數字
def test():
return round(random.random(),3)
test()
0.678
利用python另乙個語法糖,裝飾器的方法
#返回乙個從0到1的浮點值
def test():
return random.random()
def decorator(func):
return func()
f = decorator(test)
ff()
0.65202651090431
如果有很多地方都想改變,每個去修改就很不方便,裝飾器,可以只修改裝飾器內的內容,其他被裝飾器裝飾的,都會跟著改變
利用python另乙個語法糖,裝飾器的方法
#返回乙個從0到1的浮點值
@decorator #裝飾器加@後,相當於f = decorator(test)這行**,兩者完全等價,如果沒有這行**,test name為test
def test():
return random.random()
def decorator(func):
##do somthing
return func()
#f = decorator(test)
f() #f的呼叫,實際是呼叫的test.f = decorator(test)
0.552135547899615
test.__name__
#利用python另乙個語法糖,裝飾器的方法
#返回乙個從0到1的浮點值
def decorator(func):
#do somthing
return round(func(*arge,**kwarge),3) #做了改變,這樣修改3即可控制幾位有效數字
#do somthing
@decorator#裝飾器加@後,相當於f = decorator(test)這行**,兩者完全等價,如果沒有這行**,test name為test
def test():
return random.random()
@decorator
def test_two():
return random.random()*10
test()
0.902
test_two()
1.68
Python函式之一 函式的入門
1 什麼是函式 函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的 段。2 函式的作用 例 計算字串str abcdefghijk 列表li 1,3,8,5,6,8,6,6 元組tup 8,3,6,8,2,4,6,8,6 中元素的個數,不能使用len方法。不使用函式的情況 li 1 3,8 ...
Python函式入門
def f1 a,b,c 0,args,kw a,b 必選引數 c 預設引數 arg 可變引數 kw 關鍵字引數 print a a,b b,c c,args args,kw kw def f2 a,b,c 0,d,kw a,b 必選引數 c 預設引數 d 命名關鍵字引數 kw 關鍵字引數 prin...
python 函式入門
函式分類 是否存在返回值 有返回值的函式 使用return關鍵字返回結果 函式遇到return關鍵字,則立刻返回 無返回值的函式 是否存在引數 有參函式 引數的個數,根據情況任意 引數的型別,是任意型別 無參函式 函式定義者 系統函式 由官方定義的函式 print input type 第三方定義 ...