簡明python教程三 函式

2022-07-16 09:24:09 字數 2929 閱讀 7613

函式通過def關鍵字定義。def關鍵字後跟乙個函式的表識別符號名稱,然後跟一對圓括號。

圓括號之中可以包括一些變數名,該行以冒號結尾。接下來是一塊語句,它們是函式體。

def sayhello():

print

'hello world!

'sayhello()

函式形參是在函式定義的圓括號對內指定,用逗號分隔。

def printmax(a,b):

if a>b:

print a,

'is maximum

'else

: print b,

'is maximum

'printmax(

3,4)

x = 5

y = 7

printmax(x,y)

使用區域性變數

def func(x):

print

'x is',x

x=2print

'changed local x to',x

x=50

func(x)

print

'x is still

',x

使用global語句

定義全域性變數,使用global語句完成這一功能。

使用global語句可以清楚地表明變數是在外面的塊定義的。

def func():

global

x print

'x is',x

x = 2

print

'changed local x to',x

x = 50

func();

print

'value of x is

',x

結果:

x is

50changed local x to

2value of x

is2

預設引數值

在函式定義的形參名後加上賦值運算子(=)和預設值,從而給形參指定預設引數值。

def say(message,times=1

): print message*times

say(

'hello')

say(

'world

',5)

重要

只有在形參表末尾的那些引數可以有預設引數值,即你不能在宣告函式形參的時候,先宣告有預設值的形參而後宣告沒有預設值的形參。(因為賦給形參的值時根據位置而賦值的)

例如,def func(a,b=5)是有效的,但是def func(a=5,b)是無效的

關鍵引數

函式有多個引數,而你只想指定其中的一部分,則可以通過命名來為這些引數賦值----關鍵引數

優勢:1.不必擔心引數的順序,使用函式變得更加簡單。

2.假設其他引數都有預設值,可以只給我們想要的引數賦值。

def func(a,b=5,c=10

): print

'a is

',a,'

and b is

',b,'

and c is',c

func(

3,7)

func(

25,c=24

)func(c=50,a=100)

return

注意:沒有返回值的return語句等價於return none。

none是python中表示沒有任何東西的特殊型別。例如,如果乙個變數的值是none,可以表示它沒有值。

除非提供自己的return語句,每個函式都在結尾暗含有return none語句。

docstrings

文件字串,它通常被簡稱為docstrings。

docstrings是乙個重要的工具,能幫助你的程式文件更加簡單易懂,應盡量使用它,甚至可以在程式執行的時候,從函式恢復文件字串。

#!/usr/bin/python

# filename: func_doc.py

def printmax(x, y):

'''prints the maximum of two numbers.

the two values must be integers.

''' x = int(x) # convert to integers, if

possible

y = int

(y)

if x >y:

print x,

'is maximum

'else

: print y,

'is maximum

'printmax(

3, 5

)print printmax.__doc__

注意:docstrings也適用於模組類。

文件字串的慣例是乙個多行字串,首行以大寫字母開始,句號結束。第二行是空行,從第三行開始是詳細的描述。

使用——doc——(注意是雙下劃線)呼叫printmax函式的文件字串屬性(屬於函式的名稱)。

簡明Python教程

簡明python教程 swaroop,c.h.著 沈潔元 譯 看了一下,確實不錯,值得推薦。目錄表前言 本書的讀者 本書的由來 本書目前的狀況 官方 約定條款 歡迎給我反饋 值得思考的一些東西 1.介紹 簡介 python的特色 概括 為什麼不使用perl?程式設計師的話 2.安裝python li...

簡明 Python 教程

字面意義上的常量 數字串 變數識別符號的命名 資料型別 物件輸出 它如何工作 邏輯行與物理行 縮排概括 簡介運算子 運算子優先順序 計算順序 結合規律 表示式使用表示式 概括簡介 if語句 使用if語句 它如何工作 while語句 使用while語句 for迴圈 使用for語句 break語句 使用...

簡明Python教程

簡明 python 教程 swaroop,c.h.著 沈潔元 譯 版本 1.20 a byte of python 簡明 python 教程 本書依照 創作公用約定 署名 非派生作品 非商業用途 發布。概要 無論您剛接觸電腦還是乙個有經驗的程式設計師,本書都將有助您學習使用python語言。目錄表前...