1. 程式人生 > >Python3.6基礎知識 函式【四】

Python3.6基礎知識 函式【四】

函式

函式是一個特定功能的結構,屬於程式碼組的一種

函式的特徵

  • 函式的定義必須使用def關鍵字
  • 函式的命名規則
    • 不允許使用中文,儘量使用英文
    • 可以包含數字,但是不能以數字開頭
    • 不可以使用特殊符號,_除外
    • 函式名嚴格區分大小寫
    • 函式名不要與關鍵字衝突
    • 函式名要見其名知其意
  • 函式不被呼叫不被執行

函式的定義

定義函式的規則

  • def關鍵字開頭 ,後跟一個空格
  • 函式名後接括號,括號內可有引數可無引數,括號後接冒號
  • 函式內所有程式碼縮排

如下函式

def printName() :
    print('定義了一個函式')
    print('王小兒')

這需要呼叫才會執行 在這裡插入圖片描述

函式的引數

引數的分類

  • 普通引數
    • 定義的時候直接定義變數名,也就是形參名
    • 呼叫的時候直接把變數名與值按位置一一對應放入即可,不傳引數是不合法的
  • 預設引數
    • 形參帶有預設值
    • 呼叫的時候如果沒有傳入值,則使用預設值
  • 關鍵字引數
  • 收集引數
def hello(name) :
    print('{0},你怎麼了'.format(name))

在這裡插入圖片描述

def helloMan(name='王二'):
    print('{0},早上好啊'.format(name))

在這裡插入圖片描述

在這裡插入圖片描述

這裡的引數還可以有多個,這裡就不一一演示了

引數這節後續更新

函式的返回值

Python中也是使用return這個關鍵字作為函式的返回的,但是這裡的函式不像Java或者其它語言,需要在定義函式的時候在方法名前面定義好返回值型別;Python中直接像上面那樣定義方法,然後需要返回就直接return就行了

def helloMen(persion):
    return '{0},你怎麼不理我啊{1}'.format(persion,persion)

在這裡插入圖片描述

注意:這裡如果我們沒有return,那這裡的result是None,也就是說函式中沒有return的話,也會返回一個值,只不過是None

檢視函式文件

比我我們想檢視print函式的官方解釋,也就是函式文件了,怎麼辦呢,如下

help(print)

就是使用help函式,然後把函式名作為引數傳進去

看看打印出來的結果

Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

我們重點看第三局

print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

第一個value也就是我們傳的引數, 後面的…就是表示可以傳多個引數, 再後面的sep=’ ‘,看下面的解釋,說處於兩個引數之前的string,也就是以這個分割多個引數,預設是空格 再後面的end=’\n’,也就是以什麼結束,預設是\n,這個轉義字元,意思就是換行;多個引數並不會在同一行打印出來

我們接下來用一個九九乘法表舉例

for row in range(1,10):
    for col in range(1,row+1):
        if col == 1 :
            print('第{0}行'.format(row),col * row,sep=' ',end=' ')
        else :
            print(col * row,end=' ')
    print('----')

看看執行結果 在這裡插入圖片描述

自定義函式文件

假如我們要對自己定義的函式寫函式文件怎麼辦呢?

方法:在函式內部開始的第一行使用字串定義文字內容即可或者使用… …將內容包括起來

在這裡插入圖片描述

在這裡插入圖片描述