這裏,Python 中方法和函數之間的主要區別進行了解釋。 Java 同樣是OOP語言,但是裏麵沒有Function的概念。但Python同時具有方法和函數的概念。
Python方法
- 方法是通過其名稱來調用的,但它是關聯到一個對象(依賴)。
- 方法定義始終包括‘self’作為它的第一個參數。
- 一個方法是隱式傳遞給對象它被調用。
- 它可能會也可能不會返回任何數據。
- 一個方法可以對相應類包含的數據(實例變量)進行操作
Python 中的基本方法結構:
Python
# Basic Python method
class class_name
def method_name () :
......
# method body
......
Python 3 用戶定義的方法:
Python3
# Python 3 User-Defined Method
class ABC :
def method_abc (self):
print("I am in method_abc of ABC class. ")
class_ref = ABC() # object of ABC class
class_ref.method_abc()
輸出:
I am in method_abc of ABC class
Python 3 內置方法:
Python3
import math
ceil_val = math.ceil(15.25)
print( "Ceiling value of 15.25 is : ", ceil_val)
輸出:
Ceiling value of 15.25 is : 16
了解更多關於Python ceil() and floor() method。
Functions
- 函數也是代碼塊以其名字命名。 (獨立的)
- 該函數可以有不同的參數,也可以根本沒有任何參數。如果任何數據(參數)已通過,他們是明確通過.
- 它可能會也可能不會返回任何數據。
- 函數不處理類及其實例概念。
Python中的基本函數結構:
Python3
def function_name ( arg1, arg2, ...) :
......
# function body
......
Python 3 用戶定義函數:
Python3
def Subtract (a, b):
return (a-b)
print( Subtract(10, 12) ) # prints -2
print( Subtract(15, 6) ) # prints 9
輸出:
-2 9
Python 3 內置函數:
Python3
s = sum([5, 15, 2])
print( s ) # prints 22
mx = max(15, 6)
print( mx ) # prints 15
輸出:
22 15
了解更多關於Python sum() function。了解更多關於Python min() or max() function。
方法和函數之間的區別
- 簡而言之,函數和方法看起來很相似,因為它們的執行方式幾乎相似,但關鍵的區別在於“Class and its Object”的概念。
- 可以調用函數僅憑其名稱,因為它是獨立定義的。但方法不能用它的名字來稱呼隻是,我們需要通過定義該類的引用來調用該類,即方法是在類中定義的,因此它們依賴於該類。
相關用法
- Python Method Overloading用法及代碼示例
- Python Method char zfill方法用法及代碼示例
- Python Method char center方法用法及代碼示例
- Python Method char capitalize方法用法及代碼示例
- Python Matplotlib.pyplot.tripcolor()用法及代碼示例
- Python Matplotlib.pyplot.subplot_tool()用法及代碼示例
- Python Matplotlib.pyplot.tricontour()用法及代碼示例
- Python Matplotlib.pyplot.show()用法及代碼示例
- Python Matplotlib.pyplot.subplots()用法及代碼示例
- Python Matplotlib.pyplot.tight_layout()用法及代碼示例
- Python Matplotlib.pyplot.twiny()用法及代碼示例
- Python Matplotlib.pyplot.twinx()用法及代碼示例
- Python Matplotlib.pyplot.ion()用法及代碼示例
- Python Matplotlib.pyplot.streamplot()用法及代碼示例
- Python Matplotlib.pyplot.matshow()用法及代碼示例
- Python Matplotlib.axes.Axes.annotate()用法及代碼示例
- Python Matplotlib.axes.Axes.hexbin()用法及代碼示例
- Python Matplotlib.axes.Axes.contourf()用法及代碼示例
- Python Matplotlib.axes.Axes.hist()用法及代碼示例
- Python Matplotlib.axes.Axes.contour()用法及代碼示例
- Python Matplotlib.axes.Axes.plot_date()用法及代碼示例
- Python Matplotlib.axes.Axes.axhline()用法及代碼示例
- Python Matplotlib.axes.Axes.text()用法及代碼示例
- Python Matplotlib.axes.Axes.clabel()用法及代碼示例
- Python Matplotlib.axes.Axes.arrow()用法及代碼示例
注:本文由純淨天空篩選整理自mdamircoder大神的英文原創作品 Difference between Method and Function in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。