Pin-Jiun / Python

Python Document
0 stars 0 forks source link

5-Function #5

Open Pin-Jiun opened 1 year ago

Pin-Jiun commented 1 year ago
def say(message):
    print(message)
    return #有寫跟沒寫一樣 回傳None
    #執行到return時def會強制結束

say("Hi!")

def add(a,b):
    #print(a+b) 不會把值帶出function
    return a+b  #會把值帶出function

value=add(6,6)
print(value)

def power(base,exp=0):
    print(base**exp)
    #return     def結束會自動執行
value=power(3,4)
print(value)       #None

#def最重要的是def的包裝,可重複使用的把它變成一個def
# 1. 參數預設資料
# 1.1 定義參數的預設值
# 1.2 呼叫函式時,可不給資料,直接使用預設值

# 2. 參數名稱對應
# 2.1 呼叫函式時,用參數名稱來對應資料

# 3. 任意長度的參數
# 3.1 定義任意長度的參數
# 3.2 使用 Tuple 處理參數
# 3.3 呼叫函式時,可給定任意長度的參數資料

def say(msg="Hello!"):#使用預設值="Hello!"
    print(msg)

say("abc")      #abc
say()           #印出預設值Hello!

#使用參數名稱對應
def divide(n1,n2=1):
    print(n1/n2)
divide(5,10)        #0.5

#參數名稱可以倒過來放,但前面要指定參數
divide(n2=4,n1=20)  #5.0

#無限(不定)參數資料(tuple)
def avg(*ns):
    print(ns)  
avg(3,4)            #(3, 4)

def avg(*ns):
    sum=0
    for x in ns:
        sum+=x
    print(sum/len(ns))  
avg(3,4)            #3.5
avg(3,4,10,55)      #18.0
Pin-Jiun commented 1 year ago

Type Hints

def greeting(name: str) -> str:
    return 'Hello ' + name

def f( a:float=0.):