1. 程式人生 > >python筆記之函式

python筆記之函式

# 什麼是函式
# 完成一件事,往往需要大量的步驟;將這些步驟彙總,形成一個整體,對外提供一個訪問名稱
# 完成這件事的工具
# 而函式的概念就類似於工具(方法)的概念,函式名就是工具(方法)名

# 需求:求兩個數的和
# step1:得到第一個數
# step2:得到第二個數
# step3:求兩個數的和
# step4:列印數的和

# 求兩個數的功能 =>
# 定義一個求兩個數的工具=>
# 給工具起個名=>
# 通過名字就可以完成一次該功能
# n1 = int(input("請輸入第一個數:"))
# n2 = int(input("請輸入第二個數:"))
# res = n1 + n2
# print("%d與%d 的和是%d" %(n1,n2,res))

# 再求一次
#函式的語法定義
# def 函式名(引數列表):
#       函式體
# def是定義函式的關鍵詞
def sum():
    n1 = int(input("請輸入第一個數:"))
    n2 = int(input("請輸入第二個數:"))
    res = n1 + n2
    print("%d與%d 的和是%d" % (n1, n2, res))

# 如何使用函式=>通過函式名(引數列表)
# 函式通過 函式名(引數列表)呼叫函式
# 呼叫一次函式就會把函式體執行一遍,
#sum()

# 再來一次
#sum()

# 為什麼使用函式
# 函式可以複用,提高開發效率

#  函式的分類
# 1.無參函式
def fn1():
    print("我是無參函式")
fn1()

# 2.有參函式
def fn2(msg):
    print("我是有參函式,引數是:%s" % msg)
fn2("今天天氣可以")
# 我是有參函式,引數是:今天天氣可以

# 3.空函式
def fn3():
    pass
fn3()
# 空函式,根據需求定義函式,該有引數還是有引數,只不過該函式功能體還未明確,用pass填充

# 函式的引數

# a 用老接收外界傳入的實際的數,該變數並不實際擁有值
def func(a):
    print(a)
# num 為實際存放值的變數(實際存在的數)
num = 10
func(num)
# 實際擁有值的數:num稱之為實參
# 接收實際值的數: a 稱之為形參
# 形參就是對實參的值拷貝

def func1(a,b):
    print(a,b)

func1(10,20)
# 實參與形參個數需要一致,且一一對應

def func2(a,b=888):
    print(a,b)
func2(1000,2000)
func2(1000)
# 1000 2000
# 1000 888
# 形參b在規定的時候,賦了初值,稱之為預設(值)形參
# 注:預設形參要出現在非預設形參之後

# 函式的返回值:就是功能完成後對外界的反饋
# py中所有函式都有返回值
def f():
    pass
res = f()
print(res)
# 當沒有明確函式返回值,函式返回值為None

# 用return關鍵詞明確函式返回值
def f1():
    return 88888
res = f1()
print(res)
# 88888

def f2(a):
    if a >= 60:
        return "及格"
    return "不及格"
print("存在return之下的語句永遠不會被執行") # 該語句不執行
res = f2(80)
print(res)
# 及格
# return可以結束函式

def f3():
    return 666,888
# 一次性接收,以元組方式
res = f3()
print(res)
# (666, 888)

# 逐一接收,採用解壓賦值方式
a, b = f3()
print(a,b)
# 666 888