python函數的基本使用

函數的基本使用

"""
1,什麼是函數?
    函數就至關於具有某一功能的工具
    函數的使用必須遵循一個原則:先定義、後調用
2,爲何要用函數
    組織結構不清晰,可讀性差
    代碼冗餘
    可維護性、擴展性差
3,如何用函數
    先定義:三種定義方式
    後調用:三種調用方式
4,函數的返回值
    三種返回方式
"""

定義函數

"""
函數的使用必須遵循‘先定義,後調用’的原則。函數的定義就至關於事先將函數體代碼保存起來,而後將內存地址賦值給函數名,函數名就是對這段代碼的引用,這和變量的定義是類似的。沒有事先定義函數而直接調用,就至關於在引用一個不存在的‘變量名’。

定義函數的語法

def 函數名(參數1,參數2,..):
"""文檔描述"""
    函數體
    return 值

1,def:定義函數的關鍵字;
2,函數名:函數名指向函數內存地址,是對函數體代碼的引用。函數的命名應該反映出函數的功能;
3,括號:括號就是觸發函數體代碼的執行,括號內定義參數,參數是無關緊要的,並且無需指定參數的類型;
4,冒號;括號後要加冒號,而後在下一行開始縮進編寫函數體的代碼;
5,"""文檔描述""":描述函數功能,參數介紹等信息的文檔,非必要,可是建議加上,從而加強函數的可讀性;
6,函數體:由語句和表達式組成;
7,return值:定義函數的返回值,return是無關緊要的。
"""

函數的三種形式

"""
1,無參函數
例如:
def func():
    print('hello')
應用:
def func():
    name = input("請輸入姓名:").strip()
    age = input("請輸入年齡:").strip()
    gender = input("請輸入性別:").strip()
    msg = '姓名:{} 年齡:{} 性別:{}' .format(name,age,gender)
    print(msg)	# 至關於存放了一段代碼
func() 	# 調用函數

2,有參函數
例如:
def func(x,y):
    print(x,y)
func(1,2)

3,空函數
函數體爲pass表明什麼都不作,稱爲空函數。定義空函數一般是有用的,由於在程序設計的開始,每每是先想好程序都須要完成什麼功能,而後把全部功能都列舉出來用pass充當函數體‘佔位符’,這將使得程序的體系結構立見,清晰且可讀性強。
例如:
def func(x,y):
    pass

ps:空函數,函數體代碼爲pass

應用:
def auth_user():
    """user authentication function"""
    pass

def download_file():
    """download file function"""
    pass

def upload_file():
    """upload file function"""
    pass

ps:在規劃階段使用

"""

函數的調用

"""
函數的使用分爲定義階段與調用階段,定義函數時只檢測語法,不執行函數體代碼,函數名加括號即函數調用,只有調用函數時纔會執行函數體代碼。

定義階段:
def func():
    print('in the func')
	
def foo():
    print('in the foo')

func()
foo()   # 調用階段

執行結果:
in the fun
in the foo
"""

函數的返回值

"""
return是函數結束的標誌,即函數體代碼一旦運行到return會當即終止函數的運行,並會將return的值看成本次運行的結果返回給調用者,return後無值或直接省略return,則默認返回None,return的返回值無類型限制,且能夠將多個返回值放到一個元組內。

1.返回None
函數體內沒有return
	  return
	  return  None

2,返回一個值:
def func():
    return 10
	
3,返回多個值
def func():
    return 10,'aa',[1,2]
"""
相關文章
相關標籤/搜索