python日誌之python函式:
一、認識函式
1.什麼是函式
函式,function,通俗來說,函式,就是功能的意思,函式是用來封裝特定功能的,比如,在python中,len()是乙個函式,len()這個函式實現的功能可能是返回乙個字串的長度,所以說len()這個函式他的特定功能就是返回長度,再比如,我們可以定義乙個函式,然後編寫這個函式的功能,之後要使用的時候再呼叫這個函式。所以函式分為兩種型別,一種是系統自帶的不用我們編寫其功能的,比如len()這種函式,再一種就是我們自己定義的,需要我們編寫其功能的,這種函式自由度高,叫做自定義函式,需要使用的時候直接呼叫該函式。
2.函式的功能
不同的函式實現不同的功能,方便快捷
a=」hellomyteacher」
print len(a)
a=」student」
b=a.split(「u」)
print b
[『st』, 『dent』]
def a():
print 「hello」;print 777
print 「a」
a()hello
777
a3.python裡函式的定義
在python中要想使用自定義函式,就得先定義乙個函式,定義乙個函式包括兩個部分的含義,第乙個含義是申明這個制定的部分是函式,而不是其他的物件;第二個含義是定義這個函式所包含的功能,也就是要編寫的這個函式的功能
」』 def 函式名():#括號不可缺,以及冒號:,表示結尾了
函式內容;
」』def function1():
a=8
print a
二、形參和實參
1.函式中引數的概念
函式是為了實現一項或多項功能,我們知道函式len()是取字串長度,但是吐過僅僅只有len(),他是沒有實際意義的,畢竟我們沒有取字串長度的目標,如果我們要讓他有實際意義,就必須將某個字串放進這個函式裡面,比如我們要取字串」admin」的長度,我們就要把」admin」放進len()這個函式裡面,就變成了len(「admin」),這樣我們的len()函式才有實際意義,這時,我們把括號裡的」admin」稱為函式的引數,其實,引數就是函式在執行其功能時所需要使用到的資料。
print len()
traceback
typeerror:len() takes exactly one argument (0 given)
a=」admin」
print len(a)
2.什麼是形參
形參一般發生在函式定義的過程中,形參一般指引數的名稱,而不代表引數的值,他僅僅只是形式上的引數,僅僅只標明乙個函式裡面,哪個位置有哪個引數名稱的引數而已。
def function1(a,b):
if a>b:
print a
else:
print b
3.什麼是實參
實參跟形參剛好互補,實參一般是在函式呼叫是出現的,實參一般指的是引數具體的值,而不是形式上的
def function1(a,b):
if a>b:
print a
else:
print b#之前為形參
function1(1,3) #現在是實參
區別:
實參是具體的值,形參只是乙個引數的名稱,表示位置所在
實參和形參出現的時候不一樣,實參出現在呼叫,形參出現在定義
4.引數的傳遞
在python中函式在呼叫過程中引數的傳遞是有順序的
def function(a,b):
if a>b:
print 「前面這個數大於後面這個數」
else:
print 「後面這個數比較大」
function(7,8) #7->a,8->b
後面這個數比較大
def function(a,b=8):
print a
print b
function(1)
function(1,2)
5.關鍵引數
在python中乙個函式中出現多個引數的時候,我們可以通過引數的名字直接給我們的引數賦值,那麼這些引數稱之為關鍵引數
def function(a=1,b=6,c=7):#初始化
print a
print b
print c
function(5)
5 6
7 function(b=7,a=8)
8 7
7 function(5,c=2,b=3)
5 2
3 function(b=4,c=2,a=1)
1 4
2 」』但是要注意,引數不能衝突」』
function(b=2,c=3,2)
提示程式有eroor
三、全域性變數和區域性變數
1.什麼是作用域
python中乙個變數是在一定的範圍內其作用的,在其起作用的這個範圍我們稱之為作用域。
def func():
i=8
print i
提示i沒有定義,i作用範圍是函式內,所以在print執行功能時是沒有意義的,即i不再print的作用範圍
print j
j=9提示j沒有定義,j的作用域在賦值之後,而之前的print沒有包括到作用域
j=9
print j
2.區域性變數
在python中作用域在一定範圍內而非全域性都起作用的變數,我們叫做區域性變數,在函式中,如果我們沒有進行全域性變數申明,那麼就預設是區域性變數。
def func2(a):
i=7
print i
i=9
func2(i)
print i
3.全域性變數
在python中這些變數的作用域為全域性,也就是作用在程式的全部地方,那麼我們需要對這個變數進行全域性宣告,宣告後這個變數就變成了全域性變數
def func3():
global i #i是全域性變數,global進行全域性宣告
i=7
print i
i=9
func3()
7 因為從外到內,裡面的i=7是函式一直所賦予的值,外部的i=9並沒有賦值進去
i=9
print i
四、函式的使用和返回值
1.函式的呼叫
在執行程式是,要執行某個函式,就需要呼叫該函式,想要呼叫乙個函式,在函式定義後,直接輸入一遍這個函式名即可,如果要傳遞實參到函式裡面執行,直接誒再呼叫的時候括號裡面輸入實參即可。比如乙個函式def func3():這樣定義的,那麼我們呼叫它直接輸入func3(引數)即可。其中引數可以忽略
def a():
i=1
a()2.函式的返回值
在python中有的函式是有返回值的,有的函式是沒有返回值的,而有返回值的函式,我們可以返回乙個值,也可以讓函式返回多個值。
def test():
i=7
return i
print test()
把i return至函式test()
def test2(i,j):
k=i*j
return (i,j,k)
x=test2(4,5)
print x
(4,5,20)
def test2(i,j):
k=i*j
return (i,j,k)
y,z,m=test2(4,5)
print y
五、文件字串
1.什麼是文件字串
作為一門語言,python可以定義很多很多的函式,當函式數量增加時,對於開發人員來說,如果遇到太多的函式而沒有進行深入了解這個程式,就會變得混亂,所以針對這種因為數量規模增加而變得雜亂的問題,我們需要去解決
第一種方式:在開發的時候為每個函式寫乙個文件說明
第二種方式:在每個函式開頭增加一段說明性文字,那麼這些文字我們成為文件字串,這樣使程式變得清晰
2.文件字串使用詳解
def d(i,j):
」』這個函式實現乙個乘法運算。
函式會返回乙個乘法運算的結果。」』
k=i*j
return k
print d.doc#列印文件字串內容
help(d) #輸出d的字元資訊,包括文件字串和函式定義
怎樣學習python語言 如何學習python語言
python語言很神秘嗎 python作為一款類自然語言的程式語言,很方便的就可以上手,而且可以說是老少皆宜。用python程式設計非常簡單,只要有一台電腦 無論windows或者蘋果 就可以完成python程式設計。完成python程式設計首先需要在電腦上安裝python環境,安裝完成後就可以開始...
深圳python費用標準 深圳學習python學費
第 一步 基本的 python 技能 首先要安裝 python 由於我們要使用機器學習和科學計算的 packages 這裡建議安裝 anaconda。anaconda 是乙個可在 linux osx windows 上執行的 python 實現工具,擁有所需的機器學習 packages 包括 num...
python學習日誌
1 python中range xrange 和np.arange 區別 range 多用於迴圈,返回乙個range物件,若想要返回乙個list則前面加上list轉換 arange 是numpy中的函式,np.range 返回乙個array型別的物件,可以使用小數步長 xrange 返回xrange ...