日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python中的函數和變量的用法

作者:喂喂6 更新時間: 2022-08-19 編程語言

一、函數

1.位置參數

???格式:

def 函數名(參數1,參數2):
     代碼塊
函數名(值1,值2)

? 代碼案例:

def f(a,b):
     print("a:",a)
     print("b:",b)
f(2,3)

2.關鍵字參數

?格式:

def 函數名(參數1,參數2):
    代碼塊
函數名(參數1=值1,參數2,=值2)

代碼案例:

def aa(c,d):
    print("c:",c)
    print("d:",d)
aa(c=2,d=3)

注意:參數調用時,可以改變傳參順序,如果有位置參數需要位置參數放在關鍵字參數前面。

def aa(w,c,d):
    print("c:",c)
    print("d:",d)
    print("w:",w)
aa(2,c=2,d=3)

3、缺省參數

定義:在形參中默認有值參數,稱之為缺省參數。

代碼案例:調用函數時,缺省參數的值沒有傳入

def pp(name,age=20):
    print("name:",name)
    print("age:",age)
pp(name="rose")

代碼案例:調用函數時,缺省參數的值傳入

def pp(name,age=10):
    print("name:",name)
    print("age:",age)
pp(name="jack",age=18)

4、不定長參數

定義:有時候需要一個函數能處理比當初聲明時更多的參數,這些參數叫作不定參數,聲明時不會命名

注意:加*的變量args會放在所有未命名的變量參數,args為元組

而加**的變量kwargs會存放在命名參數,即形如key=value的參數,kwargs為字典

格式:

def p(*agrs,**kwargs):
     print("args:",args)
     print("kargs:",kwargs)
p(參數)

代碼案例:

不定長參數* args:

def p(*args):
    print("args:",args)
p(100,200)

不定長參數** args:

def pp(**kwargs):
    print("kwargs:",kwargs)
pp(a=3,b=4)

5、參數位置順序

注意:如果很多個值都是不定長參數,那么這種情況下,可以將缺省參數放到 *args的后面, 但如果有 **kwargs的話,**kwargs必須是最后的

格式:

def fun(位置參數,*args,缺省參數,**kwargs): 
    代碼塊 
fun(參數值)

代碼案例:

def s(a,*args,b=2,**kwargs):
    print("a:",a)
    print("args:",args)
    print("b:",b)
    print("**kwargs",kwargs)
s(1,4,6,b=7,m=2,n=5)

6.函數返回值

格式:

def sum(): 
    代碼塊 
    return 值 
sum()

代碼案例:

def sum(a,b):
    return a+b
result=sum(1,2)    #保存函數的返回值
print(result)

7.多個return

注意:一個函數中可以有多個return語句,但是只要有一個return語句被執行到,那么這個函數就會結束了,因此后面的return沒有什么用處

代碼案例:

def cr(n):
    print("---1---")
    if n==100:
        print("---2---")
        # 函數中下面的代碼不會執行,因為return除了能夠將數據返回之外,還有一個隱藏的功能:結束函數
        return n+1
        print("return執行之后不會繼續執行")
        print("231223")
    else:
        print("---3---")
        return n+2
    print("---4---")
result1 = cr(100)
print(result1) # 打印101
result2 = cr(200)
print(result2) # 打印202

8.返回多個數據

總結:return后面可以是元組,列表、字典等,只要是能夠存儲多個數據的類型,就可以一次性返回多個數據

代碼案例:

def dd(a,b):
    sh=a//b      #取模
    ch=a%b       #取余
    return sh,ch        #默認元組
result=dd(5,2)
print(result)

9.函數類型

9.1?無參數,無返回值的函數

此類函數,不能接收參數,也沒有返回值,一般情況下,打印提示燈類似的功能,使用這類的函數
def rr():
    print("-------")
    print('點點點')
    print('')
    print('1')
    print('2')
    print('3')
    print('-------')

9.2?無參數,有返回值的函數

此類函數,不能接收參數,但是可以返回某個數據,一般情況下,像采集數據,用此類函數

def rr():
    return 2

9.3?參數,無返回值的函數

此類函數,能接收參數,但不可以返回數據,一般情況下,對某些變量設置數據而不需結果時,用此類函數

9.4?參數,有返回值的函數

此類函數,不僅能接收參數,還可以返回某個數據,一般情況下,像數據處理并需要結果的應用,用此類函數

# 計算1~num的累積和
def cc(num):
    result = 0
    i=1
    while i<=num:
        result=result+i
        i+=1
    return result
print(cc(4))

10.函數嵌套

一個函數里面又調用了另外一個函數,這就是所謂的函數嵌套調用

代碼案例:

def test():
    print("testa start")
    print("testb testb 執行")
    print("testb end")
def testa():
    print("testa start")
    test()
    print("testa end")

11.匿名函數

定義:lambda函數也叫匿名函數,即函數沒有具體的名稱

注意:lambda函數可以賦值給變量,默認是返回的,所以不用再加return關鍵字

注釋:例如g = lambda x:x+1,可以看成如下函數,冒號前是參數,可以有多個,用逗號隔開,冒號右邊的 返回值

代碼案例:

g = lambda x :x+1 
print(g(1))
def g(x):
    return x + 1
print(g(1))

二、變量

1.局部變量

定義:局部變量,就是在函數內部定義的變量

約束:其作用范圍是這個函數內部,即只能在這個函數中使用,在函數的外部是不能使用的

代碼案例:

def test1():
    a=2
    print("我是局部變量啊a:",a)
    a=20
    print("修改之后的局部變量a:",a)
def test2():
    a=30
    print("我是test02函數中的局部變量a",a)
test1()
test2()

2.全局變量

定義:在函數外邊定義的變量叫做全局變量

約束:全局變量能夠在所有的函數中進行訪問

代碼案例:

a=100
def test1():    # 雖然沒有定義變量a但是依然可以獲取其數據
    print(a)
def test2():     # 雖然沒有定義變量a但是依然可以獲取其數據
    print(a)
# 調用函數
test1()
test2()

原文鏈接:https://blog.csdn.net/weixin_65219914/article/details/126409913

欄目分類
最近更新